@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,95 +1,95 @@
|
|
|
1
|
-
import { IEventBus, SystemEvent } from
|
|
2
|
-
import { ServiceBroker } from
|
|
1
|
+
import type { IEventBus, SystemEvent } from "@camstack/types";
|
|
2
|
+
import type { ServiceBroker } from "moleculer";
|
|
3
3
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
* Narrow interface for the Moleculer ServiceBroker surface used in this file.
|
|
5
|
+
* moleculer's index.d.ts chains through eventemitter2 whose package.json has
|
|
6
|
+
* no `types` field; typescript-eslint's no-unsafe-* rules flag every
|
|
7
|
+
* broker.X access. Cast once per function: `const bkr = broker as unknown as BrokerLike`.
|
|
8
|
+
*/
|
|
9
9
|
export interface BrokerLike {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
10
|
+
readonly nodeID: string;
|
|
11
|
+
call<T = unknown>(action: string, params?: unknown, opts?: unknown): Promise<T>;
|
|
12
|
+
createService(schema: unknown): void;
|
|
13
|
+
waitForServices(service: unknown, timeout?: number): Promise<unknown>;
|
|
14
|
+
broadcast(event: string, data: unknown): void;
|
|
15
|
+
localBus: {
|
|
16
|
+
on(event: string, handler: (data: unknown) => void): void;
|
|
17
|
+
};
|
|
18
|
+
logger: {
|
|
19
|
+
warn?: (msg: string) => void;
|
|
20
|
+
};
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
* Topic prefix for clustered EventBus broadcasts. The `camstack.evt.`
|
|
24
|
+
* namespace keeps our events disjoint from Moleculer internal events
|
|
25
|
+
* (`$node.*`, `$services.*`) — the `$event-bus` service's
|
|
26
|
+
* `camstack.evt.**` wildcard handler therefore never sees them.
|
|
27
|
+
*/
|
|
28
28
|
export declare const EVENT_TOPIC_PREFIX = "camstack.evt.";
|
|
29
29
|
/** Build the Moleculer broadcast topic for an event category. */
|
|
30
30
|
export declare function clusterEventTopic(category: string): string;
|
|
31
31
|
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
* Subscribe a PASS-THROUGH relay handler to the broker's shared bus WITHOUT
|
|
33
|
+
* registering it in the local-interest surface. Used exclusively by the UDS
|
|
34
|
+
* event bridge for its cluster/parent-local → children fan-out subscription:
|
|
35
|
+
* the bridge must receive every event the gate lets through so it can relay to
|
|
36
|
+
* forked children, but it is not itself a terminal consumer, so it must not
|
|
37
|
+
* count toward this node's interest (a counted `*` would defeat the filter).
|
|
38
|
+
* Returns an unsubscribe function.
|
|
39
|
+
*/
|
|
40
40
|
export declare function subscribePassthrough(broker: ServiceBroker, handler: (event: SystemEvent) => void): () => void;
|
|
41
41
|
/** Cross-node inbound fan-out counters for a broker, `{ delivered, suppressed }`. */
|
|
42
42
|
export interface MoleculerEventStats {
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
readonly delivered: number;
|
|
44
|
+
readonly suppressed: number;
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
47
|
+
* Install (or clear, with `null`) the per-node interest oracle consulted by the
|
|
48
|
+
* `$event-bus` inbound handler to decide whether an inbound cross-node event is
|
|
49
|
+
* wanted by any local subscriber on this node. The oracle is read PER-EVENT so a
|
|
50
|
+
* child (un)subscribing takes effect immediately with no re-registration.
|
|
51
|
+
*
|
|
52
|
+
* Only non-retaining nodes (agents) meaningfully filter — a retaining bus (hub
|
|
53
|
+
* main) always accepts every category (it serves `getRecent` + the admin-ui live
|
|
54
|
+
* stream). Installing the oracle on the hub too is therefore harmless and keeps
|
|
55
|
+
* the wiring uniform.
|
|
56
|
+
*/
|
|
57
57
|
export declare function setNodeEventInterest(broker: ServiceBroker, oracle: (() => readonly string[] | null) | null): void;
|
|
58
58
|
/**
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
* Cross-node inbound counters for `broker`, or `null` if no cross-node event has
|
|
60
|
+
* been processed yet. Exposed for the D2 shadow burn-in + operator debug —
|
|
61
|
+
* mirror of `LocalChildRegistry.getChildEventStats`.
|
|
62
|
+
*/
|
|
63
63
|
export declare function getMoleculerEventStats(broker: ServiceBroker): MoleculerEventStats | null;
|
|
64
64
|
/**
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
65
|
+
* Register the `$event-bus` service on a broker. MUST be called BEFORE
|
|
66
|
+
* `broker.start()` — Moleculer announces a service's event
|
|
67
|
+
* subscriptions to remote nodes only during the discovery handshake;
|
|
68
|
+
* a post-start `createService` propagates via the ~10s heartbeat and
|
|
69
|
+
* makes cross-node delivery unreliable in the meantime.
|
|
70
|
+
*
|
|
71
|
+
* The service's single wildcard handler (`camstack.evt.**`) is the
|
|
72
|
+
* inbound bridge: every `broker.broadcast('camstack.evt.<cat>', event)`
|
|
73
|
+
* from any node lands here. Self-origin echoes are dropped (the
|
|
74
|
+
* emitting node already delivered synchronously in `emit`).
|
|
75
|
+
*
|
|
76
|
+
* Idempotent. Internal service (`$`-prefixed) — hidden from the
|
|
77
|
+
* capability graph.
|
|
78
|
+
*
|
|
79
|
+
* Callers:
|
|
80
|
+
* - hub backend (`MoleculerService.onModuleInit`), before `broker.start()`
|
|
81
|
+
* - agent bootstrap, before `broker.start()`
|
|
82
|
+
* - forkable process / group runner, before `broker.start()`
|
|
83
|
+
*/
|
|
84
84
|
export declare function registerEventBusService(broker: ServiceBroker): void;
|
|
85
85
|
/**
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
86
|
+
* @param options.retainRecent - Pass `true` ONLY from the hub main process
|
|
87
|
+
* (`EventBusService.attachBroker`), the single process that serves the
|
|
88
|
+
* `getRecent`/audit capability. Every other caller (agents, child runners,
|
|
89
|
+
* the per-addon wrapper, the `$event-bus` handler) omits it → the bus retains
|
|
90
|
+
* nothing and `getRecent` returns `[]`. Events are one-shot everywhere else.
|
|
91
|
+
*/
|
|
92
92
|
export declare function getBrokerEventBus(broker: ServiceBroker, options?: {
|
|
93
|
-
|
|
93
|
+
retainRecent?: boolean;
|
|
94
94
|
}): IEventBus;
|
|
95
95
|
export declare function createBrokerEventBus(broker: ServiceBroker, addonId: string): IEventBus;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { LogTags } from
|
|
2
|
-
import { ServiceBroker } from
|
|
1
|
+
import type { LogTags } from "@camstack/types";
|
|
2
|
+
import type { ServiceBroker } from "moleculer";
|
|
3
3
|
interface LogEntry {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
timestamp: Date;
|
|
5
|
+
level: string;
|
|
6
|
+
scope?: string;
|
|
7
|
+
message: string;
|
|
8
|
+
meta?: Record<string, unknown>;
|
|
9
|
+
tags?: LogTags;
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
12
|
+
* Hub Log Forwarder — forwards log entries to the hub via $hub.log.
|
|
13
|
+
*
|
|
14
|
+
* Listens for Moleculer node discovery events. When the hub node
|
|
15
|
+
* connects, forwarding activates. When it disconnects, forwarding
|
|
16
|
+
* pauses and resumes on reconnect. No timeouts — fully event-driven.
|
|
17
|
+
*
|
|
18
|
+
* NOTE on `console.*` below: this class IS the log transport. Its own
|
|
19
|
+
* lifecycle messages (connected / disconnected / call-failed) must NOT
|
|
20
|
+
* be routed through a hub-forwarding logger — that would recurse (the
|
|
21
|
+
* log transport logging about itself through itself). The reference
|
|
22
|
+
* `HubForwarderDestination` in `@camstack/system` solves the same problem
|
|
23
|
+
* with an injected `statusLogger` that is wired to a non-forwarding
|
|
24
|
+
* destination. `HubLogForwarder` has no such injection point and is
|
|
25
|
+
* currently unused in the tree (exported only), so its status writes
|
|
26
|
+
* stay on raw `console.*` as a deliberate, documented residual.
|
|
27
|
+
*/
|
|
28
28
|
declare class HubLogForwarder {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
private readonly broker;
|
|
30
|
+
private connected;
|
|
31
|
+
constructor(broker: ServiceBroker);
|
|
32
|
+
initialize(): Promise<void>;
|
|
33
|
+
write(entry: LogEntry): void;
|
|
34
|
+
shutdown(): Promise<void>;
|
|
35
35
|
}
|
|
36
36
|
export { HubLogForwarder };
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { ServiceSchema } from
|
|
2
|
-
import { LogTags } from
|
|
3
|
-
import { RegisterNodeParams } from
|
|
4
|
-
import { ClusterSecretGate } from
|
|
5
|
-
import { MeshAuthenticator } from
|
|
1
|
+
import type { ServiceSchema } from "moleculer";
|
|
2
|
+
import type { LogTags } from "@camstack/types";
|
|
3
|
+
import type { RegisterNodeParams } from "./node-registry.js";
|
|
4
|
+
import { type ClusterSecretGate } from "./cluster-secret.js";
|
|
5
|
+
import type { MeshAuthenticator } from "./mesh-authenticator.js";
|
|
6
6
|
interface HubServiceDeps {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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
|
-
|
|
7
|
+
readonly getAddonConfig: (addonId: string) => unknown;
|
|
8
|
+
readonly getSettings: (scope: string, key?: string) => unknown;
|
|
9
|
+
readonly getRecentEvents: (category?: string, limit?: number) => readonly unknown[];
|
|
10
|
+
readonly onLog: (entry: {
|
|
11
|
+
level: string;
|
|
12
|
+
message: string;
|
|
13
|
+
addonId: string;
|
|
14
|
+
nodeId: string;
|
|
15
|
+
scope?: string;
|
|
16
|
+
tags?: LogTags;
|
|
17
|
+
meta?: Record<string, unknown>;
|
|
18
|
+
}) => void;
|
|
19
|
+
readonly onSetLogLevel?: (level: string) => void;
|
|
20
|
+
/**
|
|
21
|
+
* D3 registration handshake. A node calls `$hub.registerNode` once it
|
|
22
|
+
* has finished mounting EVERY service; the payload is its complete cap
|
|
23
|
+
* manifest. Idempotent — replaces the node's prior manifest entirely.
|
|
24
|
+
*/
|
|
25
|
+
readonly onRegisterNode?: (params: RegisterNodeParams) => void;
|
|
26
|
+
/** Explicit deregistration (graceful shutdown). `$node.disconnected` covers crashes. */
|
|
27
|
+
readonly onUnregisterNode?: (nodeId: string) => void;
|
|
28
|
+
/**
|
|
29
|
+
* The hub's cluster-secret gate, read on EVERY registration (the secret
|
|
30
|
+
* lives in the keychain and may be set or changed at runtime — D797):
|
|
31
|
+
* `off` lets every node in, `on` requires the matching `clusterSecretHash`,
|
|
32
|
+
* `unknown` (the keychain cannot answer yet) refuses with a retryable error.
|
|
33
|
+
* Absent → `off` (test brokers); the hub always passes the keychain's gate.
|
|
34
|
+
*/
|
|
35
|
+
readonly clusterSecretGate?: () => ClusterSecretGate;
|
|
36
|
+
/**
|
|
37
|
+
* The hub's per-node mesh identity (D802). When present, `joinChallenge` /
|
|
38
|
+
* `authenticateNode` run the challenge–response and `registerNode` asks it
|
|
39
|
+
* whether the SENDER may register (`MeshAuthenticator.admitRegistration`);
|
|
40
|
+
* `clusterSecretGate` is then read through it. Absent → the D797 hash gate
|
|
41
|
+
* alone (test brokers).
|
|
42
|
+
*/
|
|
43
|
+
readonly meshAuth?: MeshAuthenticator;
|
|
44
44
|
}
|
|
45
45
|
declare function createHubService(deps: HubServiceDeps): ServiceSchema;
|
|
46
46
|
export { createHubService };
|
|
@@ -1,60 +1,60 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
2
|
+
* The initialize() stall watchdog.
|
|
3
|
+
*
|
|
4
|
+
* ## What it is guarding
|
|
5
|
+
*
|
|
6
|
+
* A runner publishes its capability manifest ONLY once every hosted addon's
|
|
7
|
+
* `initialize()` has returned: `addon-runner.ts` appends to `runnerManifest`
|
|
8
|
+
* AFTER the await, and `refreshChildCaps('post-init')` runs after the whole
|
|
9
|
+
* loop. So an `initialize()` that does not return is not a slow feature — it
|
|
10
|
+
* takes every capability that addon owns OFF the cluster. Callers get
|
|
11
|
+
* `no provider registered for cap "…"`, and the admin UI renders "provider not
|
|
12
|
+
* available".
|
|
13
|
+
*
|
|
14
|
+
* ## Why a log line and not a bound
|
|
15
|
+
*
|
|
16
|
+
* 2026-08-14: `pipeline-analytics` awaited a timelapse back-fill render inside
|
|
17
|
+
* `initialize()`. The window was 19:00→05:00, the export rendered for over half
|
|
18
|
+
* an hour, and for that whole time `notification-rules`, `pipeline-analytics`,
|
|
19
|
+
* `zone-analytics`, `audio-metrics`, `videoclips`, `face-gallery`,
|
|
20
|
+
* `plate-gallery` and `addon-widgets-source` had ZERO providers cluster-wide.
|
|
21
|
+
* The runner was healthy and chatty throughout — its 30 s tick kept logging —
|
|
22
|
+
* which is exactly why nothing looked wrong. Not one line said the manifest had
|
|
23
|
+
* never been published, and the diagnosis cost hours of log correlation.
|
|
24
|
+
*
|
|
25
|
+
* Killing the runner mid-init would be worse than the stall (a half-initialised
|
|
26
|
+
* addon respawning in a loop), so this does not bound anything. It makes the
|
|
27
|
+
* stall NAMED, periodic, and attributable to the addon and the exact
|
|
28
|
+
* capabilities it is holding hostage — which is the one thing that was missing.
|
|
29
|
+
*/
|
|
30
30
|
/** First warning after this long without `initialize()` returning. */
|
|
31
|
-
export declare const INIT_WATCHDOG_FIRST_MS =
|
|
31
|
+
export declare const INIT_WATCHDOG_FIRST_MS = 6e4;
|
|
32
32
|
/** And every this often afterwards, for as long as it stays stuck. */
|
|
33
|
-
export declare const INIT_WATCHDOG_REPEAT_MS =
|
|
33
|
+
export declare const INIT_WATCHDOG_REPEAT_MS = 3e5;
|
|
34
34
|
/** The warn sink — narrow on purpose, so this module needs no logger type. */
|
|
35
35
|
export type InitWatchdogWarn = (message: string, meta: Record<string, unknown>) => void;
|
|
36
36
|
export interface InitWatchdogOptions {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
37
|
+
/** The addon whose `initialize()` is being awaited. */
|
|
38
|
+
readonly addonId: string;
|
|
39
|
+
/**
|
|
40
|
+
* The capability names the addon's manifest declares. They are what the
|
|
41
|
+
* cluster is missing while the stall lasts, so they belong in the line — a
|
|
42
|
+
* reader must not have to open the manifest to learn what is offline.
|
|
43
|
+
*/
|
|
44
|
+
readonly declaredCapabilities: readonly string[];
|
|
45
|
+
readonly warn: InitWatchdogWarn;
|
|
46
|
+
readonly now?: () => number;
|
|
47
|
+
readonly firstMs?: number;
|
|
48
|
+
readonly repeatMs?: number;
|
|
49
49
|
}
|
|
50
50
|
export interface InitWatchdogHandle {
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
/** Stop warning. Safe to call more than once, and after the last warning. */
|
|
52
|
+
clear(): void;
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
55
|
+
* Start warning if `initialize()` has not returned within `firstMs`.
|
|
56
|
+
*
|
|
57
|
+
* The caller MUST `clear()` in a `finally`, so a throwing initialize (which the
|
|
58
|
+
* runner turns into `process.exit(1)`) does not keep the timer alive.
|
|
59
|
+
*/
|
|
60
60
|
export declare function startInitWatchdog(options: InitWatchdogOptions): InitWatchdogHandle;
|
|
@@ -1,33 +1,48 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Mesh gate middleware (D802): wraps every LOCAL action and event handler so
|
|
3
|
+
* it sees each request another node sends with `ctx.nodeID` = the sender.
|
|
4
|
+
*
|
|
5
|
+
* Used on both sides of the mesh:
|
|
6
|
+
* - hub: {@link MeshAuthenticator} (challenge–response join);
|
|
7
|
+
* - agent: {@link AgentMeshAuthenticator} (hub proven by mutual join + own
|
|
8
|
+
* children via `$agent.registerNode`).
|
|
9
|
+
*
|
|
10
|
+
* For a request from another node it:
|
|
11
|
+
* 1. asks the gate's `admitCall` — refuse, tolerate or allow;
|
|
12
|
+
* 2. strips a forged identity from the params ({@link stripForgedIdentity}).
|
|
13
|
+
*
|
|
14
|
+
* Calls a node makes to itself (`ctx.nodeID` = own) pass untouched.
|
|
15
|
+
*/
|
|
16
|
+
import { type Middleware } from "moleculer";
|
|
17
|
+
import type { MeshCallVerdict } from "./mesh-authenticator.js";
|
|
3
18
|
/** Minimal surface the middleware needs — hub and agent authenticators both fit. */
|
|
4
19
|
export interface MeshCallGate {
|
|
5
|
-
|
|
6
|
-
|
|
20
|
+
admitCall(sender: string, action: string): MeshCallVerdict;
|
|
21
|
+
admitEvent(sender: string, eventName: string): MeshCallVerdict;
|
|
7
22
|
}
|
|
8
23
|
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
24
|
+
* The params of a request from another node, with every identity it claimed
|
|
25
|
+
* removed:
|
|
26
|
+
* - a cap action's input loses `caller` (the user identity the hub's tRPC
|
|
27
|
+
* router injects for `caller: 'required'` methods — `keychainAdmin.reveal`
|
|
28
|
+
* reads it) and `callerAddonId` (the transport's addon stamp the keychain
|
|
29
|
+
* owner-checks);
|
|
30
|
+
* - `$hub-cap-fwd.forward` keeps its envelope `callerAddonId` — the forward
|
|
31
|
+
* service checks it against the sender's registered manifest — but the
|
|
32
|
+
* forwarded `args` lose both.
|
|
33
|
+
*/
|
|
19
34
|
export declare function stripForgedIdentity(action: string, params: unknown): unknown;
|
|
20
35
|
interface GateLogger {
|
|
21
|
-
|
|
36
|
+
warn(message: string, meta?: Record<string, unknown>): void;
|
|
22
37
|
}
|
|
23
38
|
export interface MeshAccessMiddlewareOptions {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
39
|
+
readonly ownNodeId: string;
|
|
40
|
+
readonly authenticator: MeshCallGate;
|
|
41
|
+
readonly logger?: GateLogger;
|
|
27
42
|
}
|
|
28
43
|
/**
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
44
|
+
* Build the middleware. Pass it in `ServiceBroker({ middlewares: [...] })`
|
|
45
|
+
* so it wraps every service, including the ones Moleculer creates itself.
|
|
46
|
+
*/
|
|
32
47
|
export declare function createMeshAccessMiddleware(options: MeshAccessMiddlewareOptions): Middleware;
|
|
33
48
|
export {};
|
|
@@ -1,57 +1,51 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
export type MeshAuthMode =
|
|
2
|
+
* How strictly the hub holds other nodes to the mesh join (D802).
|
|
3
|
+
*
|
|
4
|
+
* - `transition`: a node that has not authenticated is TOLERATED — its calls
|
|
5
|
+
* run, a warning names it, and System → Cluster lists it as "not
|
|
6
|
+
* authenticated". This is how an existing cluster upgrades without
|
|
7
|
+
* splitting: the hub generates its secret, the operator copies it into each
|
|
8
|
+
* agent, and nothing is refused meanwhile.
|
|
9
|
+
* - `enforced`: a node that has not authenticated is refused on every action
|
|
10
|
+
* and its events are dropped. The D797 hash in `registerNode` is no longer
|
|
11
|
+
* accepted either — only the challenge–response.
|
|
12
|
+
*
|
|
13
|
+
* `transition` ends by itself once EVERY node the hub has ever seen (the
|
|
14
|
+
* cluster-node history) has authenticated with the challenge–response
|
|
15
|
+
* (`MeshAuthenticator.onAuthenticated` → `requestProcessMeshEnforcement`).
|
|
16
|
+
* The operator can also switch it in System → Cluster, in both directions.
|
|
17
|
+
*
|
|
18
|
+
* The mode lives in the `cluster` section of `system-settings`
|
|
19
|
+
* (`cluster.meshAuth`), owned by `system-config`, published here as a process
|
|
20
|
+
* slot the hub's broker reads on every call — the same pattern as the cluster
|
|
21
|
+
* secret gate (`cluster-secret.ts`).
|
|
22
|
+
*/
|
|
23
|
+
export type MeshAuthMode = "transition" | "enforced";
|
|
24
24
|
/** The field key inside the `cluster` section. */
|
|
25
25
|
export declare const MESH_AUTH_MODE_FIELD = "meshAuth";
|
|
26
26
|
export declare function isMeshAuthMode(value: unknown): value is MeshAuthMode;
|
|
27
27
|
/** A stored value that is not a mode reads as `transition`: never refuse on a typo. */
|
|
28
28
|
export declare function parseMeshAuthMode(value: unknown): MeshAuthMode;
|
|
29
29
|
/** How a node stands with the hub right now. */
|
|
30
|
-
export type MeshNodeAuthState =
|
|
31
|
-
/** Answered the challenge–response on its current connection. */
|
|
32
|
-
'authenticated'
|
|
33
|
-
/** Registered with the D797 hash (replayable) — accepted in `transition` only. */
|
|
34
|
-
| 'legacy'
|
|
35
|
-
/** Presented nothing: tolerated in `transition`, refused in `enforced`. */
|
|
36
|
-
| 'unauthenticated';
|
|
30
|
+
export type MeshNodeAuthState = "authenticated" | "legacy" | "unauthenticated";
|
|
37
31
|
export interface MeshNodeAuthEntry {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
32
|
+
readonly nodeId: string;
|
|
33
|
+
readonly state: MeshNodeAuthState;
|
|
34
|
+
/** Epoch ms of the last change. */
|
|
35
|
+
readonly since: number;
|
|
42
36
|
}
|
|
43
37
|
/** What System → Cluster shows. */
|
|
44
38
|
export interface MeshAuthStatus {
|
|
45
|
-
|
|
46
|
-
|
|
39
|
+
readonly mode: MeshAuthMode;
|
|
40
|
+
readonly nodes: readonly MeshNodeAuthEntry[];
|
|
47
41
|
}
|
|
48
42
|
/** Published by `system-config` whenever the stored mode is (re)read. */
|
|
49
43
|
export declare function setProcessMeshAuthMode(mode: MeshAuthMode): void;
|
|
50
44
|
/**
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
45
|
+
* The hub's mode. Until `system-config` has read it: `transition` — the safe
|
|
46
|
+
* side for an upgrading cluster (nothing that worked before is refused), and
|
|
47
|
+
* exactly what an unread setting means.
|
|
48
|
+
*/
|
|
55
49
|
export declare function getProcessMeshAuthMode(): MeshAuthMode;
|
|
56
50
|
export declare function clearProcessMeshAuthMode(): void;
|
|
57
51
|
/** Persists `enforced`; installed by `system-config`, which owns the setting. */
|