@camstack/system 1.2.389 → 1.2.391
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon/addon-api-factory.d.ts +30 -30
- package/dist/addon-routes/addon-route-registry.d.ts +31 -31
- package/dist/addon-runner.js +1 -1
- package/dist/addon-runner.mjs +1 -1
- package/dist/addon-utils.d.ts +22 -22
- package/dist/auth/admin-token-manager.d.ts +37 -67
- package/dist/auth/api-key-manager.d.ts +8 -8
- package/dist/auth/auth-audit-log.d.ts +29 -49
- package/dist/auth/auth-manager.d.ts +127 -126
- package/dist/auth/cidr.d.ts +8 -8
- package/dist/auth/external-identity-manager.d.ts +46 -34
- package/dist/auth/jwt-signing-key.d.ts +14 -14
- package/dist/auth/login-session-manager.d.ts +95 -135
- package/dist/auth/parse-record.d.ts +13 -13
- package/dist/auth/scope-matcher.d.ts +7 -7
- package/dist/auth/scoped-token-manager.d.ts +62 -62
- package/dist/auth/token-expiry.d.ts +49 -26
- package/dist/auth/totp-manager.d.ts +48 -48
- package/dist/auth/user-management-internal.d.ts +67 -52
- package/dist/auth/user-manager.d.ts +58 -58
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
- package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
- package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
- package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
- package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
- package/dist/builtins/alerts/device-label.d.ts +6 -6
- package/dist/builtins/alerts/index.d.ts +1 -1
- package/dist/builtins/alerts/prune-policy.d.ts +36 -36
- package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
- package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
- package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
- package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
- package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
- package/dist/builtins/autotrack/frame-error.d.ts +38 -38
- package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
- package/dist/builtins/autotrack/index.d.ts +2 -2
- package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
- package/dist/builtins/autotrack/target-selection.d.ts +33 -47
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
- package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
- package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
- package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
- package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
- package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
- package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
- package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
- package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
- package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
- package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
- package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
- package/dist/builtins/calendars/calendar-color.d.ts +5 -1
- package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
- package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
- package/dist/builtins/calendars/index.d.ts +1 -1
- package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
- package/dist/builtins/camera-grid/addon.d.ts +200 -174
- package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
- package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
- package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
- package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
- package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
- package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
- package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
- package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
- package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
- package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
- package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
- package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
- package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
- package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
- package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
- package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
- package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
- package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
- package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
- package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
- package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
- package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
- package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
- package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
- package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
- package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
- package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
- package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
- package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
- package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
- package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
- package/dist/builtins/camera-grid/index.d.ts +44 -44
- package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
- package/dist/builtins/composer/claim-gate.d.ts +54 -27
- package/dist/builtins/composer/composed-device-set.d.ts +40 -26
- package/dist/builtins/composer/composed-device.d.ts +39 -17
- package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
- package/dist/builtins/composer/composer-grafts.d.ts +57 -38
- package/dist/builtins/composer/composer-live-set.d.ts +15 -15
- package/dist/builtins/composer/composer-plan.d.ts +76 -60
- package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
- package/dist/builtins/composer/composer-seeds.d.ts +20 -14
- package/dist/builtins/composer/composer-verdict.d.ts +28 -14
- package/dist/builtins/composer/composer.addon.d.ts +23 -9
- package/dist/builtins/composer/composer.d.ts +145 -100
- package/dist/builtins/composer/composition-declarations.d.ts +50 -39
- package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
- package/dist/builtins/composer/composition-runtime.d.ts +178 -125
- package/dist/builtins/composer/composition-target.d.ts +38 -34
- package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
- package/dist/builtins/composer/deadline-timer.d.ts +13 -13
- package/dist/builtins/composer/existing-target.d.ts +90 -73
- package/dist/builtins/composer/field-record.d.ts +26 -19
- package/dist/builtins/composer/graft-host.d.ts +56 -32
- package/dist/builtins/composer/held-claims.d.ts +26 -9
- package/dist/builtins/composer/index.d.ts +1 -1
- package/dist/builtins/composer/own-field-reads.d.ts +26 -15
- package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
- package/dist/builtins/composer/slice-assembler.d.ts +19 -3
- package/dist/builtins/composer/source-readings.d.ts +67 -61
- package/dist/builtins/composer/source-tracker.d.ts +133 -69
- package/dist/builtins/console-logging/console-destination.d.ts +15 -8
- package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
- package/dist/builtins/console-logging/index.d.ts +3 -3
- package/dist/builtins/core-blocks/block-package.d.ts +37 -37
- package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
- package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
- package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
- package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
- package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
- package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
- package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
- package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
- package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
- package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
- package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
- package/dist/builtins/core-blocks/index.d.ts +8 -8
- package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
- package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
- package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
- package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
- package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
- package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
- package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
- package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
- package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
- package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
- package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
- package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
- package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
- package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
- package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
- package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
- package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
- package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
- package/dist/builtins/device-manager/device-projection.d.ts +53 -67
- package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
- package/dist/builtins/device-manager/device-queries.d.ts +63 -63
- package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
- package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
- package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
- package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
- package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
- package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
- package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
- package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
- package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
- package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
- package/dist/builtins/device-manager/index.d.ts +2 -2
- package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
- package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
- package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
- package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
- package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
- package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
- package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
- package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
- package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
- package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
- package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
- package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
- package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
- package/dist/builtins/device-manager/write-lock.d.ts +13 -13
- package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
- package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
- package/dist/builtins/hub-forwarder/index.d.ts +3 -3
- package/dist/builtins/keychain/index.d.ts +1 -1
- package/dist/builtins/keychain/key-sources.d.ts +19 -19
- package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
- package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
- package/dist/builtins/keychain/keychain-service.d.ts +128 -128
- package/dist/builtins/keychain/keychain-store.d.ts +96 -87
- package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
- package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
- package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
- package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
- package/dist/builtins/liveness-monitor/index.d.ts +2 -2
- package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
- package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
- package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
- package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
- package/dist/builtins/local-auth/index.d.ts +1 -1
- package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
- package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
- package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
- package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
- package/dist/builtins/local-network/address-book.d.ts +61 -36
- package/dist/builtins/local-network/index.d.ts +2 -2
- package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
- package/dist/builtins/local-network/local-hostname.d.ts +10 -10
- package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
- package/dist/builtins/loki-logging/index.d.ts +4 -4
- package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
- package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
- package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
- package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
- package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
- package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
- package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
- package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
- package/dist/builtins/native-metrics/index.d.ts +2 -2
- package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
- package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
- package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
- package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
- package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
- package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
- package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
- package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
- package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
- package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
- package/dist/builtins/platform-probe/index.d.ts +38 -30
- package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
- package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
- package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
- package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
- package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
- package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
- package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
- package/dist/builtins/shared/device-state-changed.d.ts +9 -9
- package/dist/builtins/shared/settle-sources.d.ts +16 -16
- package/dist/builtins/snapshot/index.d.ts +2 -2
- package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
- package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
- package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
- package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
- package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
- package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
- package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
- package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
- package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
- package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
- package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
- package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
- package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
- package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
- package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
- package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
- package/dist/builtins/sqlite-storage/index.d.ts +12 -12
- package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
- package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
- package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
- package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
- package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
- package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
- package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
- package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
- package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
- package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
- package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
- package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
- package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
- package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
- package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
- package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
- package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
- package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
- package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
- package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
- package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
- package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
- package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
- package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
- package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
- package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
- package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
- package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
- package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
- package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
- package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
- package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
- package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
- package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
- package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
- package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
- package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
- package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
- package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
- package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
- package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
- package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
- package/dist/builtins/system-config/index.d.ts +2 -2
- package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
- package/dist/builtins/system-config/system-config.addon.d.ts +57 -93
- package/dist/builtins/system-config/system-config.addon.js +46 -33
- package/dist/builtins/system-config/system-config.addon.mjs +46 -33
- package/dist/builtins/winston-logging/index.d.ts +3 -3
- package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
- package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
- package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Bnr8brru.js} +18 -0
- package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-mHO_6r0G.mjs} +1 -1
- package/dist/download/hosted-model-revisions.d.ts +8 -8
- package/dist/download/model-download-service.d.ts +32 -32
- package/dist/download/model-downloader.d.ts +88 -88
- package/dist/events/event-bus.d.ts +6 -6
- package/dist/events/system-event-bus.d.ts +11 -11
- package/dist/feature/feature-manager.d.ts +6 -6
- package/dist/http/asset-compression.d.ts +35 -73
- package/dist/http/authenticated-file-server.d.ts +32 -32
- package/dist/http/data-plane-registry.d.ts +49 -39
- package/dist/http/file-data-plane.d.ts +14 -14
- package/dist/http/lan-http-bind.d.ts +24 -13
- package/dist/http/reverse-proxy.d.ts +36 -24
- package/dist/index.d.ts +137 -137
- package/dist/index.js +4 -3
- package/dist/index.mjs +2 -4
- package/dist/kernel/addon-class-resolver.d.ts +1 -1
- package/dist/kernel/addon-engine-manager.d.ts +20 -20
- package/dist/kernel/addon-health-monitor.d.ts +151 -151
- package/dist/kernel/addon-installer.d.ts +609 -609
- package/dist/kernel/addon-loader.d.ts +133 -133
- package/dist/kernel/addon-manifest.d.ts +118 -118
- package/dist/kernel/addon-residue.d.ts +28 -32
- package/dist/kernel/array-buffer-census.d.ts +84 -88
- package/dist/kernel/bootstrap-config.d.ts +3 -3
- package/dist/kernel/cap-router-builder.d.ts +145 -101
- package/dist/kernel/capability-handle.d.ts +41 -41
- package/dist/kernel/capability-registry.d.ts +588 -576
- package/dist/kernel/config-manager.d.ts +199 -199
- package/dist/kernel/config-schema.d.ts +132 -128
- package/dist/kernel/custom-action-registry.d.ts +25 -25
- package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
- package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
- package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
- package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
- package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
- package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
- package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
- package/dist/kernel/deps/npm-command.d.ts +45 -45
- package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
- package/dist/kernel/deps/system-package-broker.d.ts +20 -20
- package/dist/kernel/deps/system-package-client.d.ts +3 -3
- package/dist/kernel/device-registry.d.ts +27 -27
- package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
- package/dist/kernel/event-plane-report.d.ts +174 -174
- package/dist/kernel/fs-utils.d.ts +70 -70
- package/dist/kernel/gc-census.d.ts +119 -119
- package/dist/kernel/heap-spaces.d.ts +87 -87
- package/dist/kernel/heap-watch.d.ts +706 -706
- package/dist/kernel/host-externals.d.ts +8 -8
- package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
- package/dist/kernel/index.d.ts +115 -113
- package/dist/kernel/inference/inference-resolver.d.ts +13 -13
- package/dist/kernel/infra-capabilities.d.ts +7 -7
- package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
- package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
- package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
- package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
- package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
- package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
- package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
- package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
- package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
- package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
- package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
- package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
- package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
- package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
- package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
- package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
- package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
- package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
- package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
- package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
- package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
- package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
- package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
- package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
- package/dist/kernel/moleculer/event-bus.d.ts +73 -73
- package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
- package/dist/kernel/moleculer/hub-service.d.ts +42 -42
- package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
- package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
- package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
- package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
- package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
- package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
- package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
- package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
- package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
- package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
- package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
- package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
- package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
- package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
- package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
- package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
- package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
- package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
- package/dist/kernel/moleculer/node-registry.d.ts +120 -120
- package/dist/kernel/moleculer/process-context.d.ts +2 -2
- package/dist/kernel/moleculer/process-service.d.ts +168 -168
- package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
- package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
- package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
- package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
- package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
- package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
- package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
- package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
- package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
- package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
- package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
- package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
- package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
- package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
- package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
- package/dist/kernel/outbound-queue-watch.d.ts +74 -74
- package/dist/kernel/process-cpu-census.d.ts +55 -55
- package/dist/kernel/provider-kind-drift.d.ts +17 -8
- package/dist/kernel/restart-coordinator.d.ts +71 -71
- package/dist/kernel/settings-door-view.d.ts +36 -25
- package/dist/kernel/settings-read-error.d.ts +29 -31
- package/dist/kernel/settings-view-types.d.ts +100 -95
- package/dist/kernel/socket-plane-report.d.ts +214 -153
- package/dist/kernel/status-overlay.d.ts +31 -11
- package/dist/kernel/storage-location-registry.d.ts +50 -50
- package/dist/kernel/store-settings-view.d.ts +13 -13
- package/dist/kernel/system-settings-mirror.d.ts +40 -28
- package/dist/kernel/system-settings-policy.d.ts +15 -34
- package/dist/kernel/transport/cap-action-census.d.ts +183 -183
- package/dist/kernel/transport/cap-action-name.d.ts +84 -84
- package/dist/kernel/transport/cap-child-index.d.ts +41 -41
- package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
- package/dist/kernel/transport/cap-route.d.ts +139 -139
- package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
- package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
- package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
- package/dist/kernel/transport/create-local-transport.d.ts +5 -5
- package/dist/kernel/transport/frame-codec.d.ts +109 -109
- package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
- package/dist/kernel/transport/index.d.ts +36 -36
- package/dist/kernel/transport/local-child-client.d.ts +184 -184
- package/dist/kernel/transport/local-child-registry.d.ts +592 -592
- package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
- package/dist/kernel/transport/local-transport.d.ts +92 -92
- package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
- package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
- package/dist/kernel/transport/socket-channel.d.ts +110 -110
- package/dist/kernel/transport/socket-traffic.d.ts +96 -96
- package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
- package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
- package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
- package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
- package/dist/kernel/transport/uds-logger.d.ts +33 -33
- package/dist/kernel/utils/ring-buffer.d.ts +12 -12
- package/dist/kernel/workspace-detect.d.ts +7 -7
- package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
- package/dist/logging/formatter.d.ts +52 -25
- package/dist/logging/log-manager.d.ts +133 -133
- package/dist/logging/log-redactor.d.ts +22 -1
- package/dist/logging/log-ring-buffer.d.ts +57 -57
- package/dist/logging/logging-gate.d.ts +69 -25
- package/dist/logging/logging-gate.singleton.d.ts +12 -1
- package/dist/logging/partitioned-log-buffer.d.ts +161 -161
- package/dist/logging/scoped-logger.d.ts +14 -14
- package/dist/network/network-quality.d.ts +8 -8
- package/dist/notification/notification-service.d.ts +37 -37
- package/dist/notification/toast-service.d.ts +18 -18
- package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
- package/dist/pipeline/pipeline-runner.d.ts +6 -6
- package/dist/pipeline/pipeline-validator.d.ts +8 -8
- package/dist/process/proc-stat.d.ts +51 -51
- package/dist/process/resource-monitor.d.ts +19 -19
- package/dist/python/python-env-manager.d.ts +10 -10
- package/dist/repl/interfaces.d.ts +21 -21
- package/dist/repl/repl-engine.d.ts +6 -6
- package/dist/storage/fs-storage-backend.d.ts +35 -35
- package/dist/storage/storage-location-manager.d.ts +21 -21
- package/dist/storage/storage-manager.d.ts +68 -68
- package/dist/tls/boot-tls.d.ts +24 -24
- package/dist/tls/cert-evaluation.d.ts +25 -25
- package/dist/tls/cert-identity.d.ts +39 -39
- package/dist/tls/cert-issue.d.ts +37 -17
- package/dist/tls/cert-manager.d.ts +86 -84
- package/dist/tls/https-listener.d.ts +16 -16
- package/dist/tls/index.d.ts +8 -8
- package/dist/tls/tls-actions.d.ts +18 -18
- package/dist/tls/tls-status.d.ts +15 -15
- package/dist/tls/uploaded-cert.d.ts +9 -9
- package/package.json +9 -3
|
@@ -1,226 +1,260 @@
|
|
|
1
|
-
import { ContainerMemoryPoint, ContainerMemorySnapshot, IScopedLogger, SettingsStoreClient } from '@camstack/types';
|
|
2
|
-
import { LoadSeriesRetention } from './load-series-store.js';
|
|
3
1
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
2
|
+
* Retention for the container-memory reading — the same two tiers, the same
|
|
3
|
+
* bounds and the same reader as the per-process load series, because it is the
|
|
4
|
+
* same question asked at the other end.
|
|
5
|
+
*
|
|
6
|
+
* ## Why it is retained at all
|
|
7
|
+
*
|
|
8
|
+
* A single hand reading of `memory.stat` says what the container holds RIGHT
|
|
9
|
+
* NOW and nothing about direction. That is exactly the failure this exists to
|
|
10
|
+
* fix: on 2026-08-29 six of the hub's twenty-three gigabytes had no owner among
|
|
11
|
+
* the processes, and there was no way to say whether page cache was steady or
|
|
12
|
+
* climbing — so the difference was read as a leak. A number you cannot trend is
|
|
13
|
+
* a number you will misread.
|
|
14
|
+
*
|
|
15
|
+
* ## Why it is not the same TABLE
|
|
16
|
+
*
|
|
17
|
+
* `metrics:node-load-samples` is one row PER PROCESS per sample. A
|
|
18
|
+
* container-memory reading is one row per NODE per sample — 76x fewer rows on
|
|
19
|
+
* the live fleet. Folding it into that table would mean either repeating the
|
|
20
|
+
* same ten numbers on every process row of a sample, or inventing a synthetic
|
|
21
|
+
* process that is not a process. Both are lies with a storage cost. It is its
|
|
22
|
+
* own collection, keyed the same way, pruned by the same knobs and read in the
|
|
23
|
+
* same call.
|
|
24
|
+
*
|
|
25
|
+
* ## Why it is not its own RING
|
|
26
|
+
*
|
|
27
|
+
* {@link NodeLoadRing} is already a fixed-capacity partitioned ring with
|
|
28
|
+
* per-node capacity, a fleet-wide row budget, an idle-partition sweep and a
|
|
29
|
+
* monotonic idempotence gate — all of it measured and tested. It is generic
|
|
30
|
+
* over its payload and reads only the node id and the timestamp off an
|
|
31
|
+
* envelope. A second ring implementation would be a second set of bounds to
|
|
32
|
+
* get wrong. {@link ContainerMemoryRing} is a naming adapter over it, nothing
|
|
33
|
+
* more: one reading per sample, so one "row" per sample.
|
|
34
|
+
*/
|
|
35
|
+
import type { ContainerMemoryPoint, ContainerMemorySnapshot, IScopedLogger, SettingsStoreClient } from "@camstack/types";
|
|
36
|
+
import type { LoadSeriesRetention } from "./load-series-store.js";
|
|
37
|
+
/**
|
|
38
|
+
* @durable class=audit owner=metrics-native
|
|
39
|
+
* write="one row per NODE per sample, appended by the HUB's `native-metrics`
|
|
40
|
+
* off its subscription to `metrics.node-processes-snapshot` — the same
|
|
41
|
+
* subscription, the same accepted-sample gate and the same timestamps as
|
|
42
|
+
* `metrics:node-load-samples`, so a memory row and the process rows of the
|
|
43
|
+
* same instant share an `atMs`. A node with no cgroup writes NOTHING; it
|
|
44
|
+
* never writes a zeroed row."
|
|
45
|
+
* retention="The operator's `loadSeriesRetentionHours` by age and
|
|
46
|
+
* CONTAINER_MEMORY_MAX_ROWS by count, swept in the same pass as the process
|
|
47
|
+
* table and through the same bounded page. Losing the table loses the cold
|
|
48
|
+
* window only: the ring keeps serving the last hour."
|
|
49
|
+
*/
|
|
16
50
|
export declare const CONTAINER_MEMORY_COLLECTION = "metrics:node-memory-samples";
|
|
17
51
|
/**
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
52
|
+
* Per-node ceiling on the HOT ring, in samples.
|
|
53
|
+
*
|
|
54
|
+
* Deliberately the same 180 as the process ring — one hour at the 20 s cadence,
|
|
55
|
+
* six at the 10 s default's own reckoning — because the two series are read
|
|
56
|
+
* together and a memory window shorter than the process window would silently
|
|
57
|
+
* truncate the comparison the pair exists to support.
|
|
58
|
+
*/
|
|
25
59
|
export declare const CONTAINER_MEMORY_SAMPLES_PER_NODE = 180;
|
|
26
60
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
61
|
+
* Fleet ceiling on the hot ring, in READINGS.
|
|
62
|
+
*
|
|
63
|
+
* One reading per node per sample, so this is simply the per-node ceiling times
|
|
64
|
+
* the partition ceiling the process ring already declares (16). 2 880 readings
|
|
65
|
+
* of ten numbers each is well under a megabyte — the bound exists so a runaway
|
|
66
|
+
* node id space costs a fixed amount, not because the number is large.
|
|
67
|
+
*/
|
|
34
68
|
export declare const CONTAINER_MEMORY_MAX_TOTAL_ROWS: number;
|
|
35
69
|
/**
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
export declare const CONTAINER_MEMORY_MAX_ROWS =
|
|
70
|
+
* Hard ceiling on the durable table, in ROWS. The guarantee behind the
|
|
71
|
+
* retention intention, exactly as `DEFAULT_MAX_ROWS` is for the process table.
|
|
72
|
+
*
|
|
73
|
+
* | cadence | retention | rows (3 nodes) |
|
|
74
|
+
* | --- | --- | --- |
|
|
75
|
+
* | 10 s | 6 h (default) | 6 480 |
|
|
76
|
+
* | 5 s | 6 h | 12 960 |
|
|
77
|
+
* | 5 s | 72 h, 16 nodes | 829 440 — capped here |
|
|
78
|
+
*
|
|
79
|
+
* 50 000 rows is 7.7x the shipped default. This row is strictly narrower than
|
|
80
|
+
* a `metrics:node-load-samples` row — fewer columns, one index, every value an
|
|
81
|
+
* integer varint — and that one was MEASURED at 87 B/row, so 50 000 rows is
|
|
82
|
+
* **under 4.2 MiB** with the real figure lower still. It is not a knob: a
|
|
83
|
+
* guarantee that moves with the hand that raised the intention is not one.
|
|
84
|
+
*/
|
|
85
|
+
export declare const CONTAINER_MEMORY_MAX_ROWS = 5e4;
|
|
52
86
|
/** Rows one prune pass may remove. Bounded, never a full scan. */
|
|
53
|
-
export declare const CONTAINER_MEMORY_PRUNE_PAGE_ROWS =
|
|
87
|
+
export declare const CONTAINER_MEMORY_PRUNE_PAGE_ROWS = 2e4;
|
|
54
88
|
export declare const CONTAINER_MEMORY_COLUMNS: readonly [{
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
89
|
+
readonly name: "id";
|
|
90
|
+
readonly type: "INTEGER";
|
|
91
|
+
readonly primaryKey: true;
|
|
92
|
+
readonly notNull: true;
|
|
59
93
|
}, {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
94
|
+
readonly name: "nodeId";
|
|
95
|
+
readonly type: "TEXT";
|
|
96
|
+
readonly notNull: true;
|
|
63
97
|
}, {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
98
|
+
readonly name: "atMs";
|
|
99
|
+
readonly type: "INTEGER";
|
|
100
|
+
readonly notNull: true;
|
|
67
101
|
}, {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
102
|
+
readonly name: "source";
|
|
103
|
+
readonly type: "TEXT";
|
|
104
|
+
readonly notNull: true;
|
|
71
105
|
}, {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
106
|
+
readonly name: "currentMib";
|
|
107
|
+
readonly type: "INTEGER";
|
|
108
|
+
readonly notNull: true;
|
|
75
109
|
}, {
|
|
76
|
-
|
|
77
|
-
|
|
110
|
+
readonly name: "limitMib";
|
|
111
|
+
readonly type: "INTEGER";
|
|
78
112
|
}, {
|
|
79
|
-
|
|
80
|
-
|
|
113
|
+
readonly name: "anonMib";
|
|
114
|
+
readonly type: "INTEGER";
|
|
81
115
|
}, {
|
|
82
|
-
|
|
83
|
-
|
|
116
|
+
readonly name: "fileMib";
|
|
117
|
+
readonly type: "INTEGER";
|
|
84
118
|
}, {
|
|
85
|
-
|
|
86
|
-
|
|
119
|
+
readonly name: "shmemMib";
|
|
120
|
+
readonly type: "INTEGER";
|
|
87
121
|
}, {
|
|
88
|
-
|
|
89
|
-
|
|
122
|
+
readonly name: "slabMib";
|
|
123
|
+
readonly type: "INTEGER";
|
|
90
124
|
}, {
|
|
91
|
-
|
|
92
|
-
|
|
125
|
+
readonly name: "gpuShmemMib";
|
|
126
|
+
readonly type: "INTEGER";
|
|
93
127
|
}];
|
|
94
128
|
export declare const CONTAINER_MEMORY_INDEXES: readonly [{
|
|
95
|
-
|
|
96
|
-
|
|
129
|
+
readonly name: "idx_node_memory_node_at";
|
|
130
|
+
readonly columns: readonly ["nodeId", "atMs"];
|
|
97
131
|
}];
|
|
98
132
|
/** One stored row, in the units the table stores them in. */
|
|
99
133
|
export interface ContainerMemoryRow {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
134
|
+
readonly nodeId: string;
|
|
135
|
+
readonly atMs: number;
|
|
136
|
+
readonly source: string;
|
|
137
|
+
readonly currentMib: number;
|
|
138
|
+
readonly limitMib: number | null;
|
|
139
|
+
readonly anonMib: number | null;
|
|
140
|
+
readonly fileMib: number | null;
|
|
141
|
+
readonly shmemMib: number | null;
|
|
142
|
+
readonly slabMib: number | null;
|
|
143
|
+
readonly gpuShmemMib: number | null;
|
|
110
144
|
}
|
|
111
145
|
/** The ONE encode. */
|
|
112
146
|
export declare function snapshotToRow(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): ContainerMemoryRow;
|
|
113
147
|
/**
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
148
|
+
* The ONE decode. A row whose `source` is not a hierarchy this build knows is
|
|
149
|
+
* skipped rather than coerced — a stored string that no longer means anything
|
|
150
|
+
* must not be charted as though it did.
|
|
151
|
+
*/
|
|
118
152
|
export declare function rowToPoint(row: ContainerMemoryRow): ContainerMemoryPoint | null;
|
|
119
153
|
/** Structural validation on read. A malformed row is skipped, never charted. */
|
|
120
154
|
export declare function recordToMemoryRow(data: Record<string, unknown>): ContainerMemoryRow | null;
|
|
121
155
|
export interface ContainerMemoryRingOptions {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
156
|
+
readonly samplesPerNode?: number;
|
|
157
|
+
/**
|
|
158
|
+
* Injectable clock, forwarded to the ring's idle-partition sweep. Tests
|
|
159
|
+
* drive eviction without sleeping for an hour; production uses `Date.now`.
|
|
160
|
+
*/
|
|
161
|
+
readonly now?: () => number;
|
|
128
162
|
}
|
|
129
163
|
/**
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
164
|
+
* The HOT tier — a naming adapter over {@link NodeLoadRing}, not a second ring.
|
|
165
|
+
*
|
|
166
|
+
* One reading per sample, so the ring's "rows" and its samples are the same
|
|
167
|
+
* count and its fleet budget is a sample budget. Every bound, the idle sweep
|
|
168
|
+
* and the monotonic replay gate come from there unchanged.
|
|
169
|
+
*/
|
|
136
170
|
export declare class ContainerMemoryRing {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
171
|
+
private readonly ring;
|
|
172
|
+
constructor(options?: ContainerMemoryRingOptions);
|
|
173
|
+
/** Retain one reading. `false` = a timestamp this node already delivered. */
|
|
174
|
+
record(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): boolean;
|
|
175
|
+
/**
|
|
176
|
+
* Read one node's retained readings, oldest-first. `sinceMs` is EXCLUSIVE,
|
|
177
|
+
* matching every other reader in this subsystem.
|
|
178
|
+
*
|
|
179
|
+
* A node nobody has recorded answers EMPTY — which is what "this node has no
|
|
180
|
+
* cgroup" looks like, and it must stay distinguishable from a zero.
|
|
181
|
+
*/
|
|
182
|
+
read(nodeId: string, sinceMs?: number): readonly ContainerMemoryPoint[];
|
|
149
183
|
}
|
|
150
184
|
/**
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
185
|
+
* Merge the two tiers and reduce, oldest-first.
|
|
186
|
+
*
|
|
187
|
+
* Dedupe is on `atMs` with the HOT copy winning, exactly as the process reader
|
|
188
|
+
* does: the ring holds the reading as it arrived, the table holds it after the
|
|
189
|
+
* MiB encode.
|
|
190
|
+
*
|
|
191
|
+
* Reduction keeps, for each bucket, the reading with the largest
|
|
192
|
+
* `currentBytes` — WHOLE, every field from that one sample. A per-field
|
|
193
|
+
* maximum would synthesise a row whose parts never coexisted (an `anon` peak
|
|
194
|
+
* and a `file` peak minutes apart, summed into a total that never happened),
|
|
195
|
+
* and a mean would smear away the spike this series exists to find. `atMs`
|
|
196
|
+
* becomes the bucket START so the points lie on the same x-axis as the folded
|
|
197
|
+
* process series, which is the only reason both travel in one answer.
|
|
198
|
+
*
|
|
199
|
+
* An empty bucket stays ABSENT — never zero, never carried forward.
|
|
200
|
+
*/
|
|
167
201
|
export declare function reduceContainerMemory(points: readonly ContainerMemoryPoint[], bucketMs: number, origin: number): readonly ContainerMemoryPoint[];
|
|
168
202
|
/** Merge cold + hot on `atMs`, hot wins. Exported because dedup is the
|
|
169
|
-
|
|
203
|
+
* property worth testing on its own. */
|
|
170
204
|
export declare function mergeContainerMemory(cold: readonly ContainerMemoryPoint[], hot: readonly ContainerMemoryPoint[]): readonly ContainerMemoryPoint[];
|
|
171
205
|
export interface ContainerMemoryStoreDeps {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
206
|
+
readonly store: SettingsStoreClient;
|
|
207
|
+
readonly logger: IScopedLogger;
|
|
208
|
+
readonly now?: () => number;
|
|
209
|
+
readonly prunePageRows?: number;
|
|
176
210
|
}
|
|
177
211
|
/** What one prune pass did. Returned so a test can assert the bound held. */
|
|
178
212
|
export interface ContainerMemoryPruneOutcome {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
213
|
+
readonly deletedByAge: number;
|
|
214
|
+
readonly deletedByCap: number;
|
|
215
|
+
readonly rowsExamined: number;
|
|
216
|
+
readonly capBit: boolean;
|
|
183
217
|
}
|
|
184
218
|
/**
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
219
|
+
* The COLD tier. Append-only, bounded, and never the authority on anything the
|
|
220
|
+
* hot ring can answer.
|
|
221
|
+
*
|
|
222
|
+
* Every method is best-effort and says so in the log rather than throwing at
|
|
223
|
+
* the emitter: a storage hiccup must cost a gap in a chart, never a dropped
|
|
224
|
+
* snapshot on the bus.
|
|
225
|
+
*/
|
|
192
226
|
export declare class ContainerMemoryStore {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
227
|
+
private declared;
|
|
228
|
+
private readonly store;
|
|
229
|
+
private readonly logger;
|
|
230
|
+
private readonly nowFn;
|
|
231
|
+
private readonly prunePageRows;
|
|
232
|
+
constructor(deps: ContainerMemoryStoreDeps);
|
|
233
|
+
/** Idempotently declare the collection. `false` when the store refused. */
|
|
234
|
+
declare(): Promise<boolean>;
|
|
235
|
+
/** Append ONE reading. */
|
|
236
|
+
append(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): Promise<number>;
|
|
237
|
+
/** Read one node's cold readings, oldest-first. `sinceMs` is EXCLUSIVE. */
|
|
238
|
+
read(nodeId: string, sinceMs: number, limitRows: number): Promise<readonly ContainerMemoryPoint[]>;
|
|
239
|
+
/**
|
|
240
|
+
* Enforce BOTH bounds, oldest-first, through a bounded page each.
|
|
241
|
+
*
|
|
242
|
+
* Not rate-limited here: it is driven by the process store's own prune
|
|
243
|
+
* cadence, so it runs at most once a minute by construction and a second
|
|
244
|
+
* timer would be a second thing to get wrong.
|
|
245
|
+
*/
|
|
246
|
+
prune(nodeIds: readonly string[], retention: LoadSeriesRetention): Promise<ContainerMemoryPruneOutcome | null>;
|
|
247
|
+
/** Total rows, or `null` when the store could not answer. */
|
|
248
|
+
count(): Promise<number | null>;
|
|
249
|
+
/**
|
|
250
|
+
* Delete this node's oldest rows, at most one page's worth.
|
|
251
|
+
*
|
|
252
|
+
* `cutoff === null` means "the oldest rows, whatever their age" — the
|
|
253
|
+
* row-cap path, which is bounded by `limitRows` instead. Either way the page
|
|
254
|
+
* is READ FIRST, ordered by the one index, and its last `atMs` becomes the
|
|
255
|
+
* effective cutoff for a single bounded delete. An unbounded `deleteWhere`
|
|
256
|
+
* would be one statement and one stalling transaction the first time a
|
|
257
|
+
* retention is lowered.
|
|
258
|
+
*/
|
|
259
|
+
private deleteOldestPage;
|
|
226
260
|
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { MetricsGpuInfo } from
|
|
1
|
+
import type { MetricsGpuInfo } from "@camstack/types";
|
|
2
2
|
/** `access(path, X_OK)` — resolves when executable, rejects otherwise. */
|
|
3
3
|
export type AccessCheck = (path: string) => Promise<void>;
|
|
4
4
|
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
* The first `PATH` entry under which `binary` is executable, or `null`.
|
|
6
|
+
* An empty or missing `PATH` asks nothing.
|
|
7
|
+
*/
|
|
8
8
|
export declare function findOnPath(binary: string, pathEnv: string | undefined, check?: AccessCheck): Promise<string | null>;
|
|
9
9
|
/** The two impure steps, injectable. */
|
|
10
10
|
export interface NvidiaProbeDeps {
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
readonly findOnPath: (binary: string) => Promise<string | null>;
|
|
12
|
+
readonly exec: (command: string, args: readonly string[]) => Promise<string>;
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
* `nvidia-smi`'s one-line CSV as a `MetricsGpuInfo`, or `null` when the
|
|
16
|
+
* binary is absent, fails, or prints something else. Never throws.
|
|
17
|
+
*/
|
|
18
18
|
export declare function readNvidiaGpu(deps: NvidiaProbeDeps): Promise<MetricsGpuInfo | null>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { default as NativeMetricsAddon } from
|
|
2
|
-
export { NativeMetricsProvider } from
|
|
1
|
+
export { default as NativeMetricsAddon } from "./native-metrics.addon.js";
|
|
2
|
+
export { NativeMetricsProvider } from "./native-metrics-provider.js";
|
|
@@ -1,74 +1,46 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The two knobs of the durable load series, and the arithmetic that makes them
|
|
3
|
-
* honest.
|
|
4
|
-
*
|
|
5
|
-
* ## Where they live, and why there
|
|
6
|
-
*
|
|
7
|
-
* In `native-metrics`'s OWN global settings document — the one that already
|
|
8
|
-
* exists and already carries `samplingIntervalMs`. Fields on a document, never
|
|
9
|
-
* a method per knob: `system.getLoggingSettings` / `setLoggingSettings` set
|
|
10
|
-
* that precedent and it holds here.
|
|
11
|
-
*
|
|
12
|
-
* They are NOT in the logging document, and that is a decision rather than an
|
|
13
|
-
* omission. That document is about levels and diagnostic windows; a metrics
|
|
14
|
-
* cadence and a table's retention are neither. Two documents that both claim a
|
|
15
|
-
* knob is how this repo has already shipped a switch nobody read.
|
|
16
|
-
*
|
|
17
|
-
* They are cluster-wide, not per-node. Every node emits on the same cadence or
|
|
18
|
-
* the fleet's series cannot be laid over each other, and the table is single
|
|
19
|
-
* and hub-resident, so a per-node retention would be a promise nothing could
|
|
20
|
-
* keep.
|
|
21
|
-
*
|
|
22
|
-
* ## Refused, not clamped
|
|
23
|
-
*
|
|
24
|
-
* A cadence outside 5-60 s is REFUSED. Clamping would silently store 10 when
|
|
25
|
-
* the operator typed 2 and then report 10 back as though it had been accepted
|
|
26
|
-
* — the failure mode where a knob and its readback agree on a value nobody
|
|
27
|
-
* chose. The schema advertises the bounds; this refuses anything else.
|
|
28
|
-
*/
|
|
29
1
|
/** The resolved, in-force configuration. */
|
|
30
2
|
export interface LoadSeriesConfig {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
3
|
+
readonly cadenceSec: number;
|
|
4
|
+
readonly retentionHours: number;
|
|
5
|
+
readonly maxRows: number;
|
|
34
6
|
}
|
|
35
7
|
/** Why a value was refused — the message an operator is shown verbatim. */
|
|
36
8
|
export declare class LoadSeriesConfigError extends Error {
|
|
37
|
-
|
|
9
|
+
constructor(message: string);
|
|
38
10
|
}
|
|
39
11
|
/**
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
12
|
+
* Resolve the configuration, REFUSING anything out of range.
|
|
13
|
+
*
|
|
14
|
+
* An ABSENT field takes its default — that is not a refusal, it is a document
|
|
15
|
+
* that has never been written. A PRESENT field outside its bounds throws.
|
|
16
|
+
*/
|
|
45
17
|
export declare function resolveLoadSeriesConfig(raw: {
|
|
46
|
-
|
|
47
|
-
|
|
18
|
+
readonly loadSeriesCadenceSec?: unknown;
|
|
19
|
+
readonly loadSeriesRetentionHours?: unknown;
|
|
48
20
|
}): LoadSeriesConfig;
|
|
49
21
|
/** What a configuration is projected to cost, from OBSERVED counts. */
|
|
50
22
|
export interface LoadSeriesProjection {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
23
|
+
/** Rows the retention window alone would hold. */
|
|
24
|
+
readonly intendedRows: number;
|
|
25
|
+
/** Rows actually allowed — `min(intendedRows, maxRows)`. */
|
|
26
|
+
readonly boundedRows: number;
|
|
27
|
+
readonly estimatedBytes: number;
|
|
28
|
+
/** Does the row cap bite before the retention window is full? */
|
|
29
|
+
readonly capBites: boolean;
|
|
58
30
|
}
|
|
59
31
|
/**
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
32
|
+
* Project the cost of a configuration from the numbers the cluster is actually
|
|
33
|
+
* reporting — nodes and processes OBSERVED, never a constant.
|
|
34
|
+
*
|
|
35
|
+
* This is what makes the knob honest: an operator raising retention to three
|
|
36
|
+
* days sees the row count and the megabytes BEFORE applying it, rather than
|
|
37
|
+
* discovering them afterwards. `MEASURED_BYTES_PER_ROW` is measured, not
|
|
38
|
+
* guessed — see `load-series-store.ts`.
|
|
39
|
+
*/
|
|
68
40
|
export declare function projectLoadSeriesCost(input: {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
41
|
+
readonly config: LoadSeriesConfig;
|
|
42
|
+
/** Process rows observed across the fleet in the most recent snapshots. */
|
|
43
|
+
readonly observedProcessRows: number;
|
|
72
44
|
}): LoadSeriesProjection;
|
|
73
45
|
/** Human-readable one-liner for the settings form. */
|
|
74
46
|
export declare function describeLoadSeriesCost(projection: LoadSeriesProjection): string;
|