@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,99 +1,125 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Grafana Loki log destination — batches entries and pushes them to Loki's
|
|
3
|
+
* `POST /loki/api/v1/push`. Payload construction and the label policy live in the
|
|
4
|
+
* pure `loki-payload.ts`; this file owns the batching, the transport and the
|
|
5
|
+
* failure behaviour.
|
|
6
|
+
*
|
|
7
|
+
* ## It must never log
|
|
8
|
+
*
|
|
9
|
+
* This is the constraint that shapes everything else. A `log-destination` that
|
|
10
|
+
* emits a log line feeds itself: one entry → a push → the push logs something →
|
|
11
|
+
* another entry → another push. The `hub-forwarder` builtin carries the same
|
|
12
|
+
* warning in its manifest for the same reason.
|
|
13
|
+
*
|
|
14
|
+
* So this class NEVER calls `ctx.logger`, and it does not throw out of `write()`
|
|
15
|
+
* either — `LogManager` fans one entry to every destination, so throwing here
|
|
16
|
+
* would break the other sinks. Errors are counted and exposed through
|
|
17
|
+
* `getStatus()` for the Admin UI to render. Diagnosing a broken Loki
|
|
18
|
+
* configuration is a UI affordance, deliberately, because it cannot be a log line.
|
|
19
|
+
*
|
|
20
|
+
* ## Backpressure
|
|
21
|
+
*
|
|
22
|
+
* If Loki is down, entries accumulate. A logger that OOMs the process it is
|
|
23
|
+
* observing is worse than a logger that loses lines, so the queue is bounded at
|
|
24
|
+
* `MAX_QUEUE` and drops OLDEST-first when full (a burst during an incident is
|
|
25
|
+
* exactly when the newest lines matter most). Drops are counted and surfaced.
|
|
26
|
+
*/
|
|
27
|
+
import type { ILogDestination, LogEntry, LogFilter, LogLevel } from "@camstack/types";
|
|
2
28
|
export interface LokiConfig {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
29
|
+
readonly enabled: boolean;
|
|
30
|
+
/** Base URL of the Loki instance, e.g. `http://loki:3100`. */
|
|
31
|
+
readonly url: string;
|
|
32
|
+
readonly job: string;
|
|
33
|
+
readonly node: string;
|
|
34
|
+
readonly level: LogLevel;
|
|
35
|
+
/** Flush period in ms. */
|
|
36
|
+
readonly batchIntervalMs: number;
|
|
37
|
+
/** Flush early once this many entries are queued. */
|
|
38
|
+
readonly batchSize: number;
|
|
39
|
+
/** `key=value,key2=value2` static labels. Must stay low-cardinality. */
|
|
40
|
+
readonly extraLabels: string;
|
|
41
|
+
/** Grafana Cloud / multi-tenant Loki: sent as `X-Scope-OrgID`. */
|
|
42
|
+
readonly tenantId: string;
|
|
43
|
+
/** Optional HTTP basic auth. */
|
|
44
|
+
readonly username: string;
|
|
45
|
+
readonly password: string;
|
|
46
|
+
readonly timeoutMs: number;
|
|
21
47
|
}
|
|
22
48
|
export interface LokiStatus {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
49
|
+
readonly enabled: boolean;
|
|
50
|
+
readonly configured: boolean;
|
|
51
|
+
readonly queued: number;
|
|
52
|
+
readonly pushed: number;
|
|
53
|
+
readonly dropped: number;
|
|
54
|
+
readonly failures: number;
|
|
55
|
+
readonly lastError: string | null;
|
|
56
|
+
readonly lastPushAtMs: number | null;
|
|
31
57
|
}
|
|
32
58
|
/** Injected in tests. Matches the shape of global `fetch` that is actually used. */
|
|
33
59
|
export type LokiFetch = (url: string, init: {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
60
|
+
readonly method: string;
|
|
61
|
+
readonly headers: Readonly<Record<string, string>>;
|
|
62
|
+
readonly body: string;
|
|
63
|
+
readonly signal?: AbortSignal;
|
|
38
64
|
}) => Promise<{
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
65
|
+
readonly ok: boolean;
|
|
66
|
+
readonly status: number;
|
|
67
|
+
text(): Promise<string>;
|
|
42
68
|
}>;
|
|
43
69
|
export interface LokiDestinationDeps {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
70
|
+
readonly fetchFn?: LokiFetch;
|
|
71
|
+
readonly setIntervalFn?: typeof setInterval;
|
|
72
|
+
readonly clearIntervalFn?: typeof clearInterval;
|
|
47
73
|
}
|
|
48
74
|
export declare class LokiDestination implements ILogDestination {
|
|
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
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
75
|
+
private config;
|
|
76
|
+
private queue;
|
|
77
|
+
private timer;
|
|
78
|
+
private flushing;
|
|
79
|
+
private pushed;
|
|
80
|
+
private dropped;
|
|
81
|
+
private failures;
|
|
82
|
+
private lastError;
|
|
83
|
+
private lastPushAtMs;
|
|
84
|
+
private readonly fetchFn;
|
|
85
|
+
private readonly setIntervalFn;
|
|
86
|
+
private readonly clearIntervalFn;
|
|
87
|
+
constructor(deps?: LokiDestinationDeps);
|
|
88
|
+
initialize(config?: LokiConfig): Promise<void>;
|
|
89
|
+
/**
|
|
90
|
+
* Re-apply configuration to an already-initialized destination after a
|
|
91
|
+
* settings change, without dropping the queued tail. Stops the current flush
|
|
92
|
+
* timer, swaps the config in, and starts a fresh timer only when the new
|
|
93
|
+
* config is active. This is what makes the addon's "enable without a restart"
|
|
94
|
+
* contract real: `initialize()` starts a timer, so calling it twice would leak
|
|
95
|
+
* the first one — `reconfigure()` clears it first.
|
|
96
|
+
*/
|
|
97
|
+
reconfigure(config: LokiConfig): Promise<void>;
|
|
98
|
+
private stopTimer;
|
|
99
|
+
private startTimerIfActive;
|
|
100
|
+
/** Enabled AND pointed somewhere. An enabled destination with no URL is inert. */
|
|
101
|
+
private isActive;
|
|
102
|
+
write(entry: LogEntry): void;
|
|
103
|
+
/**
|
|
104
|
+
* Push whatever is queued. Never throws and never logs.
|
|
105
|
+
*
|
|
106
|
+
* On failure the batch is put BACK at the front of the queue so a transient
|
|
107
|
+
* Loki outage does not lose lines; `MAX_QUEUE` is what stops that from growing
|
|
108
|
+
* without bound.
|
|
109
|
+
*/
|
|
110
|
+
flush(): Promise<void>;
|
|
111
|
+
private push;
|
|
112
|
+
getStatus(): LokiStatus;
|
|
113
|
+
/**
|
|
114
|
+
* One-shot reachability probe for the Admin UI's "Test connection" button.
|
|
115
|
+
* Pushes a single synthetic entry, which validates the URL, the auth, the
|
|
116
|
+
* tenant header AND the label policy in one go — a bare GET would validate
|
|
117
|
+
* none of them.
|
|
118
|
+
*/
|
|
119
|
+
testConnection(config: LokiConfig): Promise<{
|
|
120
|
+
ok: boolean;
|
|
121
|
+
error: string | null;
|
|
122
|
+
}>;
|
|
123
|
+
query(_filter: LogFilter): Promise<readonly LogEntry[]>;
|
|
124
|
+
shutdown(): Promise<void>;
|
|
99
125
|
}
|
|
@@ -1,47 +1,66 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Loki logging addon — ships this node's log entries to a Grafana Loki instance.
|
|
3
|
+
*
|
|
4
|
+
* OPT-IN. It is a builtin so it is always available, but it does nothing until an
|
|
5
|
+
* operator supplies a URL: `url` defaults to empty and `LokiDestination` treats
|
|
6
|
+
* that as inert. Whether it is used at all is the per-destination
|
|
7
|
+
* `log-destination` capability toggle — the ONE enable (D777); the old private
|
|
8
|
+
* `enabled` setting is retired by `retire-enabled-flag.ts`. The provider is
|
|
9
|
+
* registered either way, so the Logging page can show it and the operator can
|
|
10
|
+
* turn it on without a restart of anything else.
|
|
11
|
+
*
|
|
12
|
+
* Sits at the same level as `winston-logging` (rotated files), `console-logging`
|
|
13
|
+
* (stdout) and `hub-forwarder` (agent → hub): all four are `log-destination`
|
|
14
|
+
* collection providers, `LogManager` fans every entry to all of them, and each is
|
|
15
|
+
* independently configurable. Enabling this one does not disable any other.
|
|
16
|
+
*
|
|
17
|
+
* Why Loki's push API rather than Promtail: see the docblock in `loki-payload.ts`.
|
|
18
|
+
*/
|
|
19
|
+
import type { ConfigUISchema, LogLevel, ProviderRegistration } from "@camstack/types";
|
|
20
|
+
import { BaseAddon } from "@camstack/types";
|
|
21
|
+
import { LokiDestination } from "./loki-destination.js";
|
|
3
22
|
interface LokiAddonConfig {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
23
|
+
readonly url: string;
|
|
24
|
+
readonly job: string;
|
|
25
|
+
readonly level: LogLevel;
|
|
26
|
+
readonly batchIntervalMs: number;
|
|
27
|
+
readonly batchSize: number;
|
|
28
|
+
readonly extraLabels: string;
|
|
29
|
+
readonly tenantId: string;
|
|
30
|
+
readonly username: string;
|
|
31
|
+
readonly password: string;
|
|
32
|
+
readonly timeoutMs: number;
|
|
14
33
|
}
|
|
15
34
|
export declare class LokiLoggingAddon extends BaseAddon<LokiAddonConfig> {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
private destination;
|
|
36
|
+
private retirementTimer;
|
|
37
|
+
private shuttingDown;
|
|
38
|
+
constructor();
|
|
39
|
+
protected onInitialize(): Promise<ProviderRegistration[]>;
|
|
40
|
+
/** One attempt of the D777 carry-over; reschedules itself while deferred. */
|
|
41
|
+
private attemptEnabledFlagRetirement;
|
|
42
|
+
protected onShutdown(): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* React to a settings change (URL, level, batching) without a
|
|
45
|
+
* restart — the contract this addon advertises. `BaseAddon` has already
|
|
46
|
+
* reloaded `this.config` by the time this runs; re-apply it to the live
|
|
47
|
+
* destination so setting or clearing the URL actually starts (or stops)
|
|
48
|
+
* pushing. Without this the destination keeps its boot-time config forever.
|
|
49
|
+
*/
|
|
50
|
+
protected onConfigChanged(): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* `node` is a Loki LABEL, so it must be the node's real identity and must not
|
|
53
|
+
* be operator-editable — a typo would fork the stream and split a node's history
|
|
54
|
+
* in two. `kernel.localNodeId` is the Moleculer node id (`'hub'` on the hub, the
|
|
55
|
+
* agent's own name elsewhere), which is exactly the bounded value wanted here.
|
|
56
|
+
*
|
|
57
|
+
* NOT named `resolveConfig`: `BaseAddon` already has a protected
|
|
58
|
+
* `resolveConfig()` that reloads persisted settings, and shadowing it with a
|
|
59
|
+
* different signature is a type error — usefully, since silently overriding it
|
|
60
|
+
* would have broken this addon's settings reload.
|
|
61
|
+
*/
|
|
62
|
+
private destinationConfig;
|
|
63
|
+
getDestination(): LokiDestination;
|
|
64
|
+
protected globalSettingsSchema(): ConfigUISchema;
|
|
46
65
|
}
|
|
47
66
|
export {};
|
|
@@ -1,57 +1,100 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Pure Loki push-payload construction. No I/O, no timers — so the label policy
|
|
3
|
+
* and the ordering rules below are testable without a Loki instance.
|
|
4
|
+
*
|
|
5
|
+
* ## Why Loki and not Promtail
|
|
6
|
+
*
|
|
7
|
+
* Promtail is a file *tailer*: it watches log files on disk and ships what it
|
|
8
|
+
* reads to Loki. CamStack already has every entry in memory, in structured form,
|
|
9
|
+
* at the moment it is emitted — writing it to disk purely so a sidecar can parse
|
|
10
|
+
* it back out loses the structure and adds a process. Loki's own ingestion API
|
|
11
|
+
* (`POST /loki/api/v1/push`) takes the structured form directly.
|
|
12
|
+
*
|
|
13
|
+
* Promtail is also end-of-life: Grafana deprecated it in favour of Alloy in 2025.
|
|
14
|
+
* Building against a deprecated shipper to reach an API we can call ourselves
|
|
15
|
+
* would be strange. If someone does run Promtail or Alloy, the rotated files
|
|
16
|
+
* from the `winston-logging` destination are still there to tail — the two
|
|
17
|
+
* destinations are independent.
|
|
18
|
+
*
|
|
19
|
+
* ## The label policy, which matters more than it looks
|
|
20
|
+
*
|
|
21
|
+
* Loki indexes labels, and every distinct label-value combination is a separate
|
|
22
|
+
* *stream* with its own index entry and its own chunks. High-cardinality labels
|
|
23
|
+
* are the documented way to make a Loki cluster fall over.
|
|
24
|
+
*
|
|
25
|
+
* So `scope`, `message`, `deviceId`, `sessionId` and everything else per-entry
|
|
26
|
+
* stay OUT of the labels and go in the line body as JSON. Labels are only the
|
|
27
|
+
* handful of values with a small, bounded set:
|
|
28
|
+
*
|
|
29
|
+
* job a fixed string, operator-configured (default `camstack`)
|
|
30
|
+
* node the ORIGIN node's id — the agent that EMITTED the entry, not the
|
|
31
|
+
* node running this destination. The hub is the single Loki egress
|
|
32
|
+
* for the whole cluster (agents forward their logs to it via the
|
|
33
|
+
* `hub-forwarder`), so labelling every pushed line with the hub's own
|
|
34
|
+
* id would collapse the entire fleet onto `node="hub"` and lose the
|
|
35
|
+
* source. Each entry carries its origin in `tags.agentId` (`'hub'` for
|
|
36
|
+
* hub-local entries, the agent id for forwarded ones — always the root
|
|
37
|
+
* node, never a child process), which is bounded by cluster size. The
|
|
38
|
+
* destination's configured node is only the fallback for an entry with
|
|
39
|
+
* no `agentId` tag.
|
|
40
|
+
* level one of four
|
|
41
|
+
*
|
|
42
|
+
* That is at most `4 × nodes` streams, which is what Loki is built for.
|
|
43
|
+
*/
|
|
44
|
+
import type { LogEntry } from "@camstack/types";
|
|
2
45
|
/** One `[unixNano, line]` pair, exactly as Loki's push API expects. */
|
|
3
46
|
export type LokiValue = readonly [string, string];
|
|
4
47
|
export interface LokiStream {
|
|
5
|
-
|
|
6
|
-
|
|
48
|
+
readonly stream: Readonly<Record<string, string>>;
|
|
49
|
+
readonly values: readonly LokiValue[];
|
|
7
50
|
}
|
|
8
51
|
export interface LokiPushBody {
|
|
9
|
-
|
|
52
|
+
readonly streams: readonly LokiStream[];
|
|
10
53
|
}
|
|
11
54
|
export interface LokiLabelInput {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
55
|
+
/** Fixed `job` label. Bounded by configuration, never per-entry. */
|
|
56
|
+
readonly job: string;
|
|
57
|
+
/**
|
|
58
|
+
* Fallback node id for entries that carry no `tags.agentId` origin — the
|
|
59
|
+
* id of the node running this destination. The per-entry origin
|
|
60
|
+
* (`tags.agentId`) is preferred so forwarded agent logs are attributed to
|
|
61
|
+
* their source node rather than the hub that ships them.
|
|
62
|
+
*/
|
|
63
|
+
readonly node: string;
|
|
64
|
+
/** Extra static labels from configuration. Values must be low-cardinality. */
|
|
65
|
+
readonly extra?: Readonly<Record<string, string>>;
|
|
23
66
|
}
|
|
24
67
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
68
|
+
* Loki rejects a label name that is not a valid Prometheus label
|
|
69
|
+
* (`[a-zA-Z_][a-zA-Z0-9_]*`), so operator-supplied keys are sanitised rather
|
|
70
|
+
* than passed through — a 400 from the push endpoint on every batch is a much
|
|
71
|
+
* worse outcome than a renamed label.
|
|
72
|
+
*/
|
|
30
73
|
export declare function sanitizeLabelName(raw: string): string;
|
|
31
74
|
/** Parse an operator's `key=value,key2=value2` label string. */
|
|
32
75
|
export declare function parseExtraLabels(raw: string): Readonly<Record<string, string>>;
|
|
33
76
|
/** `Date` → Loki's nanosecond-precision string timestamp. */
|
|
34
77
|
export declare function toUnixNano(timestamp: Date | string | number): string;
|
|
35
78
|
/**
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
79
|
+
* The line body: JSON carrying everything that must NOT be a label. Loki can
|
|
80
|
+
* parse this with `| json` at query time, so `scope` and `tags.deviceId` stay
|
|
81
|
+
* filterable without ever being indexed.
|
|
82
|
+
*/
|
|
40
83
|
export declare function formatLokiLine(entry: LogEntry): string;
|
|
41
84
|
/**
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
85
|
+
* Group a batch into one stream per distinct label set, and sort each stream's
|
|
86
|
+
* values by timestamp.
|
|
87
|
+
*
|
|
88
|
+
* The `node` label is resolved PER ENTRY from `tags.agentId` (the emitting
|
|
89
|
+
* agent, falling back to `labels.node` when absent), so a batch that mixes
|
|
90
|
+
* hub-local lines with forwarded agent lines fans out into one stream per
|
|
91
|
+
* origin node — the whole point of shipping the cluster's logs through the hub
|
|
92
|
+
* without flattening every line onto `node="hub"`.
|
|
93
|
+
*
|
|
94
|
+
* The sort is not cosmetic. Loki historically rejected a stream whose entries
|
|
95
|
+
* were not in ascending time order, and even with out-of-order ingestion enabled
|
|
96
|
+
* it is bounded by a window. Entries reach a destination from several concurrent
|
|
97
|
+
* producers, so a batch is NOT naturally ordered — without this, some pushes
|
|
98
|
+
* fail with `entry out of order` and those log lines are simply gone.
|
|
99
|
+
*/
|
|
57
100
|
export declare function buildPushBody(entries: readonly LogEntry[], labels: LokiLabelInput): LokiPushBody | null;
|
|
@@ -1,23 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* ONE-SHOT retirement of Loki's private `enabled` setting (2026-07-30, D777).
|
|
3
|
+
*
|
|
4
|
+
* The per-destination `log-destination` capability toggle is the only enable.
|
|
5
|
+
* A stored `enabled: false` is carried over to it ONCE, so an operator who had
|
|
6
|
+
* Loki off does not silently start shipping logs to a host they may no longer
|
|
7
|
+
* control:
|
|
8
|
+
*
|
|
9
|
+
* - flag stored `false` → the provider is disabled at the capability;
|
|
10
|
+
* - flag stored `true`, or never
|
|
11
|
+
* written → the capability is left as it is.
|
|
12
|
+
*
|
|
13
|
+
* Then the dead key is stripped and the marker is written in the SAME store
|
|
14
|
+
* write, so the carry-over never repeats — an operator who re-enables Loki
|
|
15
|
+
* afterwards is never switched off again.
|
|
16
|
+
*
|
|
17
|
+
* Anything that cannot be confirmed (unreadable store, refused toggle — the
|
|
18
|
+
* provider is not registered yet while the addon initializes — or a write that
|
|
19
|
+
* silently did not land) returns `deferred` and writes nothing; the caller
|
|
20
|
+
* retries in the background.
|
|
21
|
+
*
|
|
22
|
+
* Same shape as the (since removed) magic-link addon's carry-over in
|
|
23
|
+
* addon-auth; the one difference is the default the flag had (OFF there, ON
|
|
24
|
+
* here).
|
|
25
|
+
*/
|
|
26
|
+
import type { StoredKeyRead } from "@camstack/types";
|
|
2
27
|
/** The retired settings key. */
|
|
3
28
|
export declare const RETIRED_ENABLED_KEY = "enabled";
|
|
4
29
|
/** Store key marking the retirement as done. Not a schema field. Pre-D777 name kept. */
|
|
5
30
|
export declare const RETIREMENT_MARKER_KEY = "migratedEnabled";
|
|
6
31
|
export type RetirementOutcome = {
|
|
7
|
-
|
|
32
|
+
readonly kind: "already-retired";
|
|
8
33
|
} | {
|
|
9
|
-
|
|
10
|
-
|
|
34
|
+
readonly kind: "retired";
|
|
35
|
+
readonly capDisabled: boolean;
|
|
11
36
|
} | {
|
|
12
|
-
|
|
13
|
-
|
|
37
|
+
readonly kind: "deferred";
|
|
38
|
+
readonly reason: string;
|
|
14
39
|
};
|
|
15
40
|
export interface RetireEnabledFlagDeps {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
41
|
+
/** Three-way read of one key of the addon's own store. */
|
|
42
|
+
readStoredKey(key: string): Promise<StoredKeyRead>;
|
|
43
|
+
/** Disable this addon at the `log-destination` toggle. Throws when refused. */
|
|
44
|
+
disableAtCapability(): Promise<void>;
|
|
45
|
+
/** ONE store write: strip {@link RETIRED_ENABLED_KEY} and set {@link RETIREMENT_MARKER_KEY}. */
|
|
46
|
+
commit(): Promise<void>;
|
|
22
47
|
}
|
|
23
48
|
export declare function retireEnabledFlag(deps: RetireEnabledFlagDeps): Promise<RetirementOutcome>;
|