@camstack/system 1.2.276 → 1.2.278

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.
Files changed (62) hide show
  1. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  2. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  3. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  4. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/alerts/alerts.addon.js +1 -1
  6. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  7. package/dist/builtins/autotrack/index.js +1 -1
  8. package/dist/builtins/autotrack/index.mjs +1 -1
  9. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
  10. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
  11. package/dist/builtins/camera-grid/index.js +1 -1
  12. package/dist/builtins/camera-grid/index.mjs +1 -1
  13. package/dist/builtins/console-logging/index.js +1 -1
  14. package/dist/builtins/console-logging/index.mjs +1 -1
  15. package/dist/builtins/core-blocks/core-blocks.addon.js +1 -1
  16. package/dist/builtins/core-blocks/core-blocks.addon.mjs +1 -1
  17. package/dist/builtins/device-manager/device-bindings-store.d.ts +10 -0
  18. package/dist/builtins/device-manager/device-manager.addon.d.ts +0 -2
  19. package/dist/builtins/device-manager/device-manager.addon.js +63 -118
  20. package/dist/builtins/device-manager/device-manager.addon.mjs +64 -116
  21. package/dist/builtins/device-manager/device-meta-types.d.ts +15 -27
  22. package/dist/builtins/device-manager/device-source-activation.d.ts +9 -43
  23. package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
  24. package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
  25. package/dist/builtins/hub-forwarder/index.js +1 -1
  26. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  27. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  28. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  29. package/dist/builtins/local-auth/local-auth.addon.js +1 -1
  30. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  31. package/dist/builtins/local-network/local-network.addon.js +1 -1
  32. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  33. package/dist/builtins/loki-logging/index.js +1 -1
  34. package/dist/builtins/loki-logging/index.mjs +1 -1
  35. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  36. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  37. package/dist/builtins/platform-probe/index.js +1 -1
  38. package/dist/builtins/platform-probe/index.mjs +1 -1
  39. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  40. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  41. package/dist/builtins/snapshot/index.js +1 -1
  42. package/dist/builtins/snapshot/index.mjs +1 -1
  43. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  44. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  45. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  46. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  47. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  48. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  49. package/dist/builtins/system-config/system-config.addon.js +1 -1
  50. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  51. package/dist/builtins/winston-logging/index.js +1 -1
  52. package/dist/builtins/winston-logging/index.mjs +1 -1
  53. package/dist/{dist-D_OlSf31.js → dist-BWz_gZ5l.js} +145 -85
  54. package/dist/{dist-AHdiIdJH.mjs → dist-D1atncyi.mjs} +145 -85
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.js +14 -67
  57. package/dist/index.mjs +16 -66
  58. package/dist/kernel/capability-registry.d.ts +12 -42
  59. package/dist/kernel/index.d.ts +0 -1
  60. package/dist/{retired-settings-keys-LwFyTKun.js → retired-settings-keys-Ek9MPzCi.js} +1 -1
  61. package/dist/{retired-settings-keys-Cp3oG_aH.mjs → retired-settings-keys-rG_QVMT3.mjs} +1 -1
  62. package/package.json +1 -1
@@ -30,17 +30,6 @@ export type CollectionConfigReader = (capability: string) => readonly string[] |
30
30
  * cannot present it. See docs/decisions/adr-0188-an-unregister-carries-proof-of-ownership.md.
31
31
  */
32
32
  export type ProviderOwnerToken = string;
33
- /**
34
- * How much of a device's COLLECTION a caller is asking for.
35
- *
36
- * The default — and every caller that intends to USE the providers — is the
37
- * serving set: the sources that may contribute. The source LISTING path asks
38
- * for the whole set instead, because a source the operator switched off must
39
- * still produce a row to be switched back on from (D556 as amended).
40
- */
41
- export interface DeviceCollectionResolution {
42
- readonly includeSwitchedOff: boolean;
43
- }
44
33
  export declare class CapabilityRegistry {
45
34
  private readonly capabilities;
46
35
  private readonly logger;
@@ -86,7 +75,6 @@ export declare class CapabilityRegistry {
86
75
  * camera keeps every provider it has today, and a provider that registers
87
76
  * after the operator's last toggle needs no second write to be seen.
88
77
  */
89
- private readonly deviceDisabledSources;
90
78
  /** autoActivate flags per (capability, addonId) — from addon manifests */
91
79
  private readonly autoActivateFlags;
92
80
  /**
@@ -491,39 +479,21 @@ export declare class CapabilityRegistry {
491
479
  * singleton override — the in-memory provider pin, not a persisted flag.
492
480
  */
493
481
  resolveForDevice<T = unknown>(capability: string, deviceId: string): T | null;
494
- /**
495
- * Mirror ONE device's persisted source deactivations for `capability` into
496
- * the projection (D556). The authority is the device-manager's
497
- * `deviceBindings` store; this is the read side of that write and the only
498
- * way the set changes.
499
- *
500
- * No check that `capability` is declared, and none that the addons are
501
- * registered: a persisted operator decision is a fact about the fleet, not a
502
- * reference to a live object, and replaying it at boot must not depend on
503
- * which addon happened to register first. An empty list drops the entry
504
- * (unset = every source).
505
- */
506
- setDeviceDisabledSources(deviceId: string, capability: string, addonIds: readonly string[]): void;
507
- /**
508
- * The addon ids the operator switched OFF as sources of this device for
509
- * `capability`. Empty means every source — never "none".
510
- */
511
- getDeviceDisabledSources(deviceId: string, capability: string): readonly string[];
512
- /** Is `addonId` switched off as a source of this device for `capability`? */
513
- isDeviceSourceDisabled(deviceId: string, capability: string, addonId: string): boolean;
514
482
  /**
515
483
  * Resolve collection providers for a specific device.
516
- * Filters by activation (the manifest's autoActivate) and by the per-device
517
- * source deactivations the operator persisted (D556).
518
484
  *
519
- * `includeSwitchedOff` keeps the providers the operator switched off for this
520
- * device. It exists for ONE caller — the source LISTING path — because a
521
- * switched-off source must still produce a row to be switched back on from
522
- * (D554 decision 4, D556 as amended), and only its own provider can name it.
523
- * Every other path takes the default and sees the SERVING set: the sources
524
- * that may actually contribute.
525
- */
526
- resolveCollectionForDevice<T = unknown>(capability: string, deviceId: string, options?: DeviceCollectionResolution): readonly T[];
485
+ * Filters by activation (the manifest's autoActivate) and by nothing else.
486
+ * The per-device DENY set that used to filter here is gone with the switch
487
+ * it projected (2026-09-20): *"tutti i providers funzionano sempre"*. WHICH
488
+ * providers a device has is now answered by its BINDINGS
489
+ * (`device-bindings-store.ts` step 0), which is a different question from
490
+ * which of them are registered and running — this one.
491
+ *
492
+ * `deviceId` is kept in the signature and deliberately unused: the resolution
493
+ * is per-device by CONTRACT, and a caller that stops passing one is a caller
494
+ * that has stopped asking about a device.
495
+ */
496
+ resolveCollectionForDevice<T = unknown>(capability: string, _deviceId: string): readonly T[];
527
497
  /** Check if all dependencies for a capability are satisfied. */
528
498
  areDependenciesMet(capabilityName: string): boolean;
529
499
  /** Get topologically sorted boot order based on dependsOn. */
@@ -13,7 +13,6 @@ export { RESTART_MARKER_FILE, clearPendingRestart, getRestartMarkerPath, readPen
13
13
  export type { PendingRestartMarker, RestartKind, ScheduleSelfRestartOptions, } from './restart-coordinator.js';
14
14
  export { CapabilityHandle, CapabilityUnavailableError } from './capability-handle.js';
15
15
  export { CapabilityRegistry } from './capability-registry.js';
16
- export type { DeviceCollectionResolution } from './capability-registry.js';
17
16
  export { buildCapRouters, builderMountedCapNames } from './cap-router-builder.js';
18
17
  export type { CapRouterPrimitives, CapRouterServices, CapProviderGetter, RemoteProxyFactory, ProcedureBuilder, ProcedureResolverArgs, } from './cap-router-builder.js';
19
18
  export { describeProviderKindDrift } from './provider-kind-drift.js';
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-D_OlSf31.js");
1
+ const require_dist = require("./dist-BWz_gZ5l.js");
2
2
  //#region src/builtins/sqlite-storage/retired-settings-keys.ts
3
3
  /**
4
4
  * Is THIS node the one whose settings store is the cluster's authority?
@@ -1,4 +1,4 @@
1
- import { vn as asJsonObject } from "./dist-AHdiIdJH.mjs";
1
+ import { vn as asJsonObject } from "./dist-D1atncyi.mjs";
2
2
  //#region src/builtins/sqlite-storage/retired-settings-keys.ts
3
3
  /**
4
4
  * Is THIS node the one whose settings store is the cluster's authority?
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/system",
3
- "version": "1.2.276",
3
+ "version": "1.2.278",
4
4
  "description": "Core addon for CamStack — builtins, pipeline, process management, auth, logging, events",
5
5
  "keywords": [
6
6
  "camstack",