@camstack/system 1.2.390 → 1.2.392
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/addon-utils.js +1 -1
- package/dist/addon-utils.mjs +1 -1
- package/dist/amd-accelerators-CEuPFBBK.js +36 -0
- package/dist/amd-accelerators-U_RsoEDd.mjs +35 -0
- package/dist/amd-npu-B-QyyMyF.js +53 -0
- package/dist/amd-npu-Db_SoSuL.mjs +52 -0
- 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/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- 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/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- 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/alerts.addon.js +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- 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/index.js +1 -1
- package/dist/builtins/autotrack/index.mjs +1 -1
- 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/backup-orchestrator.addon.js +2 -2
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
- 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/calendars.addon.js +1 -1
- package/dist/builtins/calendars/calendars.addon.mjs +1 -1
- 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/index.js +1 -1
- package/dist/builtins/camera-grid/index.mjs +1 -1
- 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.addon.js +2 -2
- package/dist/builtins/composer/composer.addon.mjs +2 -2
- 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/console-logging/index.js +1 -1
- package/dist/builtins/console-logging/index.mjs +1 -1
- 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/core-blocks.addon.js +2 -2
- package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
- 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-manager.addon.js +2 -2
- package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
- 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/hub-forwarder/index.js +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/keychain/index.d.ts +1 -1
- package/dist/builtins/keychain/index.js +3 -3
- package/dist/builtins/keychain/index.mjs +3 -3
- 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/liveness-monitor/liveness-monitor.addon.js +1 -1
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
- 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/local-auth.addon.js +2 -2
- package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
- 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/local-network/local-network.addon.js +1 -1
- package/dist/builtins/local-network/local-network.addon.mjs +1 -1
- package/dist/builtins/loki-logging/index.d.ts +4 -4
- package/dist/builtins/loki-logging/index.js +1 -1
- package/dist/builtins/loki-logging/index.mjs +1 -1
- 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/native-metrics.addon.js +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
- 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/amd-accelerators.d.ts +15 -0
- package/dist/builtins/platform-probe/amd-npu.d.ts +29 -0
- 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/index.js +59 -22
- package/dist/builtins/platform-probe/index.mjs +59 -22
- 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/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/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/index.js +1 -1
- package/dist/builtins/snapshot/index.mjs +1 -1
- 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/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- 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-settings.addon.js +0 -0
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
- 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.addon.js +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- 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 +39 -35
- package/dist/builtins/system-config/system-config.addon.mjs +320 -316
- package/dist/builtins/winston-logging/index.d.ts +3 -3
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- 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-Nx-lrlHR.js} +19 -1
- package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-x-onDDiV.mjs} +2 -2
- package/dist/{composition-sources-wdAxs-uY.js → composition-sources-LUJsW0AQ.js} +1 -1
- package/dist/{composition-sources-xqhm2Ygr.mjs → composition-sources-R8TskGSV.mjs} +1 -1
- package/dist/{constants-Ca-Sgcl8.js → constants-D4lxxip7.js} +1 -1
- package/dist/{constants-D5z4EwY8.mjs → constants-DMvAcbbP.mjs} +1 -1
- package/dist/{dist-8LQ4lDEB.js → dist-XTkzsnz-.js} +35 -1
- package/dist/{dist-Biqn3TEn.mjs → dist-byg8IP4Q.mjs} +35 -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/{event-loop-stall-monitor-CNj73d4D.js → event-loop-stall-monitor-DPFghEFw.js} +1 -1
- package/dist/{event-loop-stall-monitor-BtK_0Pjc.mjs → event-loop-stall-monitor-TG8UcdY2.mjs} +1 -1
- 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 +9 -8
- package/dist/index.mjs +7 -9
- package/dist/{jwt-signing-key-DxV2ucvJ.js → jwt-signing-key-CD87HrHH.js} +1 -1
- package/dist/{jwt-signing-key-SnDgvVUQ.mjs → jwt-signing-key-DNBxSN5p.mjs} +1 -1
- 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/{restore-archive-D4cmLoNe.mjs → restore-archive-Bmmmyp1M.mjs} +81 -81
- package/dist/{restore-archive-Do_Yu5rC.js → restore-archive-bvYTsnvp.js} +1 -1
- package/dist/{retired-settings-keys-BsgVxh8-.mjs → retired-settings-keys-R9CBo2lY.mjs} +1 -1
- package/dist/{retired-settings-keys-Cyn3OD0K.js → retired-settings-keys-V0yq5Bm6.js} +1 -1
- 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,73 +1,114 @@
|
|
|
1
|
-
import { StorageLocation } from '@camstack/types';
|
|
2
1
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
2
|
+
* Credential redaction for `StorageLocation.config`.
|
|
3
|
+
*
|
|
4
|
+
* ── What was wrong ─────────────────────────────────────────────────────────
|
|
5
|
+
* `storage.listLocations` carries no `auth` override, so it is `protected` —
|
|
6
|
+
* every authenticated session reaches it, admin or not. The orchestrator
|
|
7
|
+
* spread each stored row verbatim. `StorageLocation.config` is
|
|
8
|
+
* `z.record(z.string(), z.unknown())`, and the SFTP / S3 / WebDAV providers
|
|
9
|
+
* already declare `password`, `privateKey`, `privateKeyPassphrase`,
|
|
10
|
+
* `secretAccessKey` and `token` inside it. Nothing was exposed only because
|
|
11
|
+
* every location on the live hub is `filesystem-storage`, whose config is
|
|
12
|
+
* `basePath` + `maxUsedGb`. The exposure arrives with the first remote
|
|
13
|
+
* location, and three providers that collect one already ship.
|
|
14
|
+
*
|
|
15
|
+
* ── The mechanism ──────────────────────────────────────────────────────────
|
|
16
|
+
* Schema-driven, never a hardcoded key list: each provider's
|
|
17
|
+
* `getProviderInfo().configSchema` already says which of its fields hold a
|
|
18
|
+
* credential, so it is the one thing that cannot drift from the provider.
|
|
19
|
+
*
|
|
20
|
+
* Two directions, and both are needed:
|
|
21
|
+
* - **out** — {@link redactLocationConfig} replaces every secret value with
|
|
22
|
+
* `REDACTED_SECRET` on the way to a caller.
|
|
23
|
+
* - **in** — {@link restoreRedactedSecrets} treats that same sentinel, sent
|
|
24
|
+
* back on an upsert, as "keep what is stored". Without it the wizard's
|
|
25
|
+
* edit-and-save round trip would write the sentinel into the config and
|
|
26
|
+
* lock the operator out of their own share on the first rename.
|
|
27
|
+
*
|
|
28
|
+
* ── The trap this deliberately avoids ──────────────────────────────────────
|
|
29
|
+
* Keying redaction off `type: 'password'` alone MISSES a secret parked in a
|
|
30
|
+
* `textarea`, and the SFTP provider parks an entire PEM private key there.
|
|
31
|
+
* Discovery goes through `collectSecretConfigKeys`, whose discriminator is
|
|
32
|
+
* `type === 'password' || secret === true`. A redaction that quietly misses a
|
|
33
|
+
* credential is worse than none: it is a leak plus an assurance there is not
|
|
34
|
+
* one.
|
|
35
|
+
*
|
|
36
|
+
* ── And the direction it can still fail in ─────────────────────────────────
|
|
37
|
+
* A schema-driven mechanism has nothing to read while the provider is down,
|
|
38
|
+
* and `listLocations` serves the row anyway. {@link secretKeysForConfig} is
|
|
39
|
+
* where that is closed — an unknown provider withholds everything it did not
|
|
40
|
+
* itself define, rather than nothing.
|
|
41
|
+
*/
|
|
42
|
+
import type { StorageLocation } from "@camstack/types";
|
|
43
|
+
/**
|
|
44
|
+
* The config keys the ORCHESTRATOR itself owns, as opposed to the ones a
|
|
45
|
+
* provider owns. Every one of them is read by framework code that has no idea
|
|
46
|
+
* which provider is behind the row:
|
|
47
|
+
*
|
|
48
|
+
* - `basePath` — `localCapacityOf`, `locationOccupancy`, the seed pass,
|
|
49
|
+
* `LocationCard`'s summary, `StorageSection`;
|
|
50
|
+
* - `readOnly` — drain mode; the recorder and post-analysis both filter on
|
|
51
|
+
* it off a `listLocations` row;
|
|
52
|
+
* - `maxUsedGb` — `resolveLocationMaxUsedBytes`;
|
|
53
|
+
* - `minFreePercent` — `resolveLocationThresholds`.
|
|
54
|
+
*
|
|
55
|
+
* None can be a credential, because the framework interprets all four itself.
|
|
56
|
+
* That is what makes the list safe to hardcode — it is NOT a list of "keys we
|
|
57
|
+
* believe are not secret", which is the rotting kind. It is the closed set of
|
|
58
|
+
* keys this module, not a provider, defines the meaning of.
|
|
59
|
+
*/
|
|
19
60
|
export declare const FRAMEWORK_CONFIG_KEYS: ReadonlySet<string>;
|
|
20
61
|
/** Minimal shape needed off a provider's `getProviderInfo()` result. */
|
|
21
62
|
export interface ProviderInfoLike {
|
|
22
|
-
|
|
23
|
-
|
|
63
|
+
readonly providerId: string;
|
|
64
|
+
readonly configSchema: unknown;
|
|
24
65
|
}
|
|
25
66
|
/** Secret config keys a provider declares, derived from its own form schema. */
|
|
26
67
|
export declare function secretKeysOfProviderInfo(info: ProviderInfoLike): ReadonlySet<string>;
|
|
27
68
|
/**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
69
|
+
* Which keys of THIS config must be treated as secret.
|
|
70
|
+
*
|
|
71
|
+
* `declared` is what the provider's own schema said, or `undefined` when the
|
|
72
|
+
* provider has not registered on this node and so has said nothing.
|
|
73
|
+
*
|
|
74
|
+
* The `undefined` branch is the one that matters. Redaction is schema-driven
|
|
75
|
+
* and the schema arrives with the provider, so "no provider" used to mean "no
|
|
76
|
+
* secret keys" — which redacted nothing while `listLocations` happily served
|
|
77
|
+
* the row, because that method reads the store and never needs a provider.
|
|
78
|
+
* That is a real window on every hub restart (the `remote-storage` group is a
|
|
79
|
+
* separate runner that registers after the orchestrator boots) and it is
|
|
80
|
+
* PERMANENT for a runner the CrashSupervisor marked terminally failed.
|
|
81
|
+
*
|
|
82
|
+
* So an unknown provider fails CLOSED: every key the framework does not itself
|
|
83
|
+
* define is withheld. It over-redacts — a host name is hidden alongside the
|
|
84
|
+
* password — and that is the correct direction, because the admin UI cannot
|
|
85
|
+
* render a provider's form without that same provider's `configSchema` either,
|
|
86
|
+
* so nothing that was working stops working.
|
|
87
|
+
*
|
|
88
|
+
* Withholding is done with the sentinel, never by dropping the key, so a save
|
|
89
|
+
* performed in this degraded state still round-trips every value back intact.
|
|
90
|
+
*/
|
|
50
91
|
export declare function secretKeysForConfig(config: Readonly<Record<string, unknown>>, declared: ReadonlySet<string> | undefined): ReadonlySet<string>;
|
|
51
92
|
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
93
|
+
* A copy of `config` with every declared secret replaced by the sentinel.
|
|
94
|
+
* Returns the SAME object when there is nothing to redact, so the common case
|
|
95
|
+
* (a filesystem location) allocates nothing.
|
|
96
|
+
*
|
|
97
|
+
* A key the provider declares secret but that is absent from the stored config
|
|
98
|
+
* is NOT invented — an absent password must keep reading as absent, or the
|
|
99
|
+
* wizard would show a credential where none is set and the write-back would
|
|
100
|
+
* then "keep" a value that never existed.
|
|
101
|
+
*/
|
|
61
102
|
export declare function redactLocationConfig(config: Readonly<Record<string, unknown>>, secretKeys: ReadonlySet<string>): Readonly<Record<string, unknown>>;
|
|
62
103
|
/** The same, applied to a whole location record. */
|
|
63
104
|
export declare function redactLocation(location: StorageLocation, secretKeys: ReadonlySet<string>): StorageLocation;
|
|
64
105
|
/**
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
106
|
+
* Undo the redaction on the way IN: any secret key whose incoming value is the
|
|
107
|
+
* sentinel is restored from what is already stored.
|
|
108
|
+
*
|
|
109
|
+
* A sentinel with NOTHING stored behind it is dropped rather than persisted —
|
|
110
|
+
* writing the literal `__camstack_redacted__` as a password is a
|
|
111
|
+
* lock-yourself-out bug that would only surface at the next connection
|
|
112
|
+
* attempt, hours later, as an authentication failure with no explanation.
|
|
113
|
+
*/
|
|
73
114
|
export declare function restoreRedactedSecrets(incoming: Readonly<Record<string, unknown>>, stored: Readonly<Record<string, unknown>> | undefined, secretKeys: ReadonlySet<string>): Readonly<Record<string, unknown>>;
|
|
@@ -1,57 +1,66 @@
|
|
|
1
|
-
import { ISettingsStoreProvider, LegacyStorageLocationDefault, StorageLocation } from '@camstack/types';
|
|
2
1
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
* Persistence layer for the storage-orchestrator's `StorageLocation`
|
|
3
|
+
* map (Task 6 of the storage-unification refactor).
|
|
4
|
+
*
|
|
5
|
+
* The service depends only on the abstract `ILocationStore` —
|
|
6
|
+
* production wires `SqliteLocationStore` (settings-backend-backed),
|
|
7
|
+
* tests pass a fake (in-memory `Map`-backed) implementation. Same
|
|
8
|
+
* pattern as `IntegrationRegistry` in `sqlite-storage/`.
|
|
9
|
+
*/
|
|
10
|
+
import type { ISettingsStoreProvider, LegacyStorageLocationDefault, StorageLocation } from "@camstack/types";
|
|
11
|
+
/**
|
|
12
|
+
* A location as it comes back OFF DISK: the live record plus the retired
|
|
13
|
+
* `isDefault` column, which exists only so the orchestrator's boot migration
|
|
14
|
+
* can turn an old default into the enabled write set and say which row it came
|
|
15
|
+
* from. No other reader may take this type.
|
|
16
|
+
*/
|
|
8
17
|
export type PersistedStorageLocation = StorageLocation & LegacyStorageLocationDefault;
|
|
9
18
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
19
|
+
* Abstract storage interface for `StorageLocation` records. Methods are
|
|
20
|
+
* async because production-side implementations hit SQLite — but the
|
|
21
|
+
* orchestrator's mutation paths fire-and-forget the writes so a slow
|
|
22
|
+
* disk doesn't block the cap surface.
|
|
23
|
+
*/
|
|
15
24
|
export interface ILocationStore {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
25
|
+
/** Read every persisted location. Called once at boot. Rows carry the
|
|
26
|
+
* RETIRED `isDefault` column when it was set, for the one reader allowed to
|
|
27
|
+
* see it: the orchestrator's boot migration onto the `enabled` write set. */
|
|
28
|
+
loadAll(): Promise<readonly PersistedStorageLocation[]>;
|
|
29
|
+
/** Insert or replace a single location by id. */
|
|
30
|
+
upsert(loc: StorageLocation): Promise<void>;
|
|
31
|
+
/** Remove a location by id. */
|
|
32
|
+
delete(id: string): Promise<void>;
|
|
24
33
|
}
|
|
25
34
|
/**
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
35
|
+
* @durable class=config owner=storage-orchestrator
|
|
36
|
+
* write="an operator creates or edits a location (basePath, minFreePercent, enabled, node pin); plus the boot reconcile — declared defaults seeded on a fresh install, and in-memory-only locations backfilled when the store is late-wired"
|
|
37
|
+
* retention="none — a row goes only when the operator deletes the location, or when the declaration pass prunes one whose declaring addon is gone. Bounded by the storage targets a human configures."
|
|
38
|
+
*/
|
|
30
39
|
export declare const STORAGE_LOCATIONS = "storage_locations";
|
|
31
40
|
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
41
|
+
* `ILocationStore` on the `settings-store` collection surface — the same door
|
|
42
|
+
* every other consumer uses. It holds the `data-store-provider` engine object
|
|
43
|
+
* directly (not the `settings-store` singleton) because since D44 the
|
|
44
|
+
* storage-orchestrator IS that singleton, and asking the registry for it would
|
|
45
|
+
* route this table back through the orchestrator itself.
|
|
46
|
+
*/
|
|
38
47
|
export declare class SqliteLocationStore implements ILocationStore {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
private readonly store;
|
|
49
|
+
private declared;
|
|
50
|
+
constructor(store: ISettingsStoreProvider);
|
|
51
|
+
/**
|
|
52
|
+
* Lazy `declareCollection` — keeps the constructor cheap and async-free.
|
|
53
|
+
* Called from every mutation/read path; `declareCollection` is idempotent
|
|
54
|
+
* (and additive on shape changes), so repeated calls collapse to a no-op.
|
|
55
|
+
*/
|
|
56
|
+
private ensureDeclared;
|
|
57
|
+
loadAll(): Promise<readonly StorageLocation[]>;
|
|
58
|
+
/**
|
|
59
|
+
* Replace-or-insert. Implemented as delete + insert rather than a
|
|
60
|
+
* conditional update because the orchestrator serializes every mutation
|
|
61
|
+
* through the in-memory map before dispatching to the store — there's no
|
|
62
|
+
* contention to lose, and delete-then-insert is unconditionally simpler.
|
|
63
|
+
*/
|
|
64
|
+
upsert(loc: StorageLocation): Promise<void>;
|
|
65
|
+
delete(id: string): Promise<void>;
|
|
57
66
|
}
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
import { StorageLocation } from
|
|
2
|
-
import { ProviderLocality } from
|
|
1
|
+
import type { StorageLocation } from "@camstack/types";
|
|
2
|
+
import type { ProviderLocality } from "./access-guards.js";
|
|
3
3
|
/** The three `statfs` fields capacity is derived from (`node:fs` StatsFs). */
|
|
4
4
|
export interface StatfsFacts {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
readonly blocks: number;
|
|
6
|
+
readonly bsize: number;
|
|
7
|
+
readonly bavail: number;
|
|
8
8
|
}
|
|
9
9
|
/** The filesystem reads the probe takes, injected so the decision is testable. */
|
|
10
10
|
export interface VolumeProbe {
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
readonly access: (target: string) => Promise<void>;
|
|
12
|
+
readonly statfs: (target: string) => Promise<StatfsFacts>;
|
|
13
13
|
}
|
|
14
14
|
export interface VolumeProbeDeps {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
readonly probe: VolumeProbe;
|
|
16
|
+
/** Only ever used to REJECT a relative `basePath` by naming what it would
|
|
17
|
+
* have resolved against — never to resolve one. */
|
|
18
|
+
readonly cwd: string;
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
* A measurement, or the reason there is none. `unknown` is never folded into a
|
|
22
|
+
* number: `0` free means "full" to every reader of this figure (D393).
|
|
23
|
+
*/
|
|
24
24
|
export type LocalVolumeCapacity = {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
readonly kind: "measured";
|
|
26
|
+
/** The path actually stat'd — the location's root, or an ancestor of it. */
|
|
27
|
+
readonly path: string;
|
|
28
|
+
readonly totalBytes: number;
|
|
29
|
+
readonly availableBytes: number;
|
|
30
30
|
} | {
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
readonly kind: "unknown";
|
|
32
|
+
readonly reason: string;
|
|
33
33
|
};
|
|
34
34
|
/** The two figures the cap carries, or `null` — never a zero standing in. */
|
|
35
35
|
export interface MeasuredVolume {
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
readonly totalBytes: number;
|
|
37
|
+
readonly availableBytes: number;
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
* Free percent for the pressure guard. An unmeasurable volume answers `100`,
|
|
41
|
+
* which is the value that keeps the guard INERT: a disk nobody measured must
|
|
42
|
+
* never be the reason footage is deleted (D393).
|
|
43
|
+
*/
|
|
44
44
|
export declare function freePercentOf(capacity: MeasuredVolume | null): number;
|
|
45
45
|
/**
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
* Volume total for turning a deficit percentage into a byte target. `0` on an
|
|
47
|
+
* unmeasurable volume — the guard's own stop condition reads that as "no
|
|
48
|
+
* target", so nothing is evicted on a reading nobody took.
|
|
49
|
+
*/
|
|
50
50
|
export declare function volumeTotalBytesOf(capacity: MeasuredVolume | null): number;
|
|
51
51
|
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
* Free + total bytes on the volume backing `location`, or why there are none.
|
|
53
|
+
*
|
|
54
|
+
* Never throws: an unreachable volume is one degraded ROW, not a failed
|
|
55
|
+
* `listLocations` — a NAS that stops answering must not blank the capacity of
|
|
56
|
+
* every other disk on the node.
|
|
57
|
+
*/
|
|
58
58
|
export declare function readLocalVolumeCapacity(location: StorageLocation, locality: ProviderLocality, localNodeId: string, deps: VolumeProbeDeps): Promise<LocalVolumeCapacity>;
|
|
@@ -1,10 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Provider discovery — the pure mapping behind the orchestrator's
|
|
3
|
+
* `storage.listProviders` cap handler.
|
|
4
|
+
*
|
|
5
|
+
* Walks every registered `storage-provider`, collects each one's
|
|
6
|
+
* `getProviderInfo()` blob, and projects it into the `storage` cap's
|
|
7
|
+
* `listProviders` output shape (including the intrinsic disk-space
|
|
8
|
+
* policy fields `shouldSaveDiskSpace` + `minFreePercent`). Errors from
|
|
9
|
+
* individual providers are isolated via `onError` — a single misbehaving
|
|
10
|
+
* driver never denies the whole list.
|
|
11
|
+
*
|
|
12
|
+
* Extracted from the addon handler so the projection is unit-testable
|
|
13
|
+
* without booting a `BaseAddon`.
|
|
14
|
+
*/
|
|
15
|
+
import type { IStorageCapProvider, IStorageProviderImpl } from "@camstack/types";
|
|
2
16
|
/** One entry of the `storage.listProviders` output array. */
|
|
3
|
-
export type StorageProviderListEntry = Awaited<ReturnType<IStorageCapProvider[
|
|
17
|
+
export type StorageProviderListEntry = Awaited<ReturnType<IStorageCapProvider["listProviders"]>>[number];
|
|
4
18
|
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
19
|
+
* Callback invoked when a provider's `getProviderInfo()` throws. The array
|
|
20
|
+
* `index` is passed so the orchestrator can identify which provider failed —
|
|
21
|
+
* `getProviderInfo()` itself threw, so there is no static id to log otherwise.
|
|
22
|
+
*/
|
|
9
23
|
export type ProviderInfoErrorHandler = (provider: IStorageProviderImpl, error: unknown, index: number) => void;
|
|
10
24
|
export declare function collectProviderInfos(providers: readonly IStorageProviderImpl[], onError: ProviderInfoErrorHandler): Promise<StorageProviderListEntry[]>;
|
|
@@ -1,68 +1,68 @@
|
|
|
1
|
-
import { LedgerWalkInput, LedgerWalkReport, StorageCleanupInput, StorageCleanupJob } from
|
|
2
|
-
import { StorageOrchestratorService } from
|
|
1
|
+
import type { LedgerWalkInput, LedgerWalkReport, StorageCleanupInput, StorageCleanupJob } from "@camstack/types";
|
|
2
|
+
import type { StorageOrchestratorService } from "./storage-orchestrator.service.js";
|
|
3
3
|
export interface CleanupJobState {
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
get(): Promise<StorageCleanupJob | null>;
|
|
5
|
+
set(value: StorageCleanupJob | null): Promise<void>;
|
|
6
6
|
}
|
|
7
7
|
export interface OrphanAuditStart {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
readonly started: boolean;
|
|
9
|
+
readonly alreadyRunning: boolean;
|
|
10
10
|
}
|
|
11
11
|
export interface OrphanAuditStatus {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
readonly running: boolean;
|
|
13
|
+
readonly complete: boolean | null;
|
|
14
|
+
readonly totalReclaimed: number;
|
|
15
|
+
readonly totalBytesReclaimed: number;
|
|
16
|
+
readonly error: string | null;
|
|
17
17
|
}
|
|
18
18
|
export interface DebugMediaStart {
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
readonly started: boolean;
|
|
20
|
+
readonly alreadyRunning: boolean;
|
|
21
21
|
}
|
|
22
22
|
export interface DebugMediaStatus {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
readonly running: boolean;
|
|
24
|
+
readonly totalReclaimed: number;
|
|
25
|
+
readonly totalBytesReclaimed: number;
|
|
26
|
+
readonly error: string | null;
|
|
27
27
|
}
|
|
28
28
|
export interface StorageCleanupParticipants {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
startOrphan(restart: boolean): Promise<OrphanAuditStart>;
|
|
30
|
+
orphanStatus(): Promise<OrphanAuditStatus>;
|
|
31
|
+
startDebugMedia(): Promise<DebugMediaStart>;
|
|
32
|
+
debugMediaStatus(): Promise<DebugMediaStatus>;
|
|
33
|
+
walkLedger(input: LedgerWalkInput): Promise<LedgerWalkReport>;
|
|
34
34
|
}
|
|
35
35
|
export interface StorageCleanupCoordinatorDeps {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
36
|
+
readonly locations: StorageOrchestratorService;
|
|
37
|
+
readonly state: CleanupJobState;
|
|
38
|
+
readonly participants: StorageCleanupParticipants;
|
|
39
|
+
readonly now: () => number;
|
|
40
|
+
readonly newId: () => string;
|
|
41
|
+
readonly sleep?: (ms: number) => Promise<void>;
|
|
42
|
+
readonly pollMs?: number;
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
* One operator-facing cleanup of leftover analytics rows/blobs, optional
|
|
46
|
+
* debug media, and ghost ledger rows on frozen footage locations.
|
|
47
|
+
*
|
|
48
|
+
* Each addon call either returns immediately (start+poll) or is a bounded
|
|
49
|
+
* ledger walk. The HTTP caller never waits on the full pass.
|
|
50
|
+
*/
|
|
51
51
|
export declare class StorageCleanupCoordinator {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
52
|
+
private readonly deps;
|
|
53
|
+
private active;
|
|
54
|
+
private startReserved;
|
|
55
|
+
constructor(deps: StorageCleanupCoordinatorDeps);
|
|
56
|
+
start(input: StorageCleanupInput): Promise<string>;
|
|
57
|
+
status(jobId?: string): Promise<StorageCleanupJob | null>;
|
|
58
|
+
cancel(jobId: string): Promise<boolean>;
|
|
59
|
+
private run;
|
|
60
|
+
private reclaimOrphans;
|
|
61
|
+
private reclaimDebugMedia;
|
|
62
|
+
private forgetGhosts;
|
|
63
|
+
private waitUntilIdle;
|
|
64
|
+
private stopped;
|
|
65
|
+
private setPhase;
|
|
66
|
+
private finish;
|
|
67
|
+
private persist;
|
|
68
68
|
}
|