@camstack/system 1.2.157 → 1.2.159

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 (65) hide show
  1. package/dist/addon-runner.js +17 -16
  2. package/dist/addon-runner.mjs +2 -1
  3. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  7. package/dist/builtins/alerts/alerts.addon.js +1 -1
  8. package/dist/builtins/alerts/alerts.addon.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/console-logging/index.js +1 -1
  12. package/dist/builtins/console-logging/index.mjs +1 -1
  13. package/dist/builtins/core-blocks/core-blocks.addon.js +1 -1
  14. package/dist/builtins/core-blocks/core-blocks.addon.mjs +1 -1
  15. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  16. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  17. package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
  18. package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
  19. package/dist/builtins/hub-forwarder/index.js +1 -1
  20. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  21. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  22. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  23. package/dist/builtins/local-auth/local-auth.addon.js +1 -1
  24. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  25. package/dist/builtins/local-network/local-network.addon.js +1 -1
  26. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  27. package/dist/builtins/loki-logging/index.js +1 -1
  28. package/dist/builtins/loki-logging/index.mjs +1 -1
  29. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  30. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  31. package/dist/builtins/platform-probe/index.js +1 -1
  32. package/dist/builtins/platform-probe/index.mjs +1 -1
  33. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  34. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  35. package/dist/builtins/snapshot/index.js +1 -1
  36. package/dist/builtins/snapshot/index.mjs +1 -1
  37. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  38. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  39. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  40. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  41. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +30 -5
  42. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +28 -6
  43. package/dist/builtins/storage-orchestrator/access-guards.d.ts +32 -0
  44. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +33 -0
  45. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +71 -1
  46. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +26 -0
  47. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +490 -8
  48. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +490 -8
  49. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +37 -1
  50. package/dist/builtins/system-config/system-config.addon.js +1 -1
  51. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  52. package/dist/builtins/winston-logging/index.js +1 -1
  53. package/dist/builtins/winston-logging/index.mjs +1 -1
  54. package/dist/{dist-CDgIzo82.js → dist-Ck2jkBZk.js} +463 -10
  55. package/dist/{dist-LvKus-mT.mjs → dist-DLh4_rn3.mjs} +446 -11
  56. package/dist/index.js +140 -139
  57. package/dist/index.mjs +3 -3
  58. package/dist/kernel/deps/manifest-system-deps.d.ts +15 -0
  59. package/dist/kernel/index.d.ts +2 -0
  60. package/dist/kernel/storage-location-registry.d.ts +16 -1
  61. package/dist/{manifest-python-deps-DVODn-qc.js → manifest-system-deps-8boi90D9.js} +202 -7
  62. package/dist/{manifest-python-deps-CD14Pv0-.mjs → manifest-system-deps-tZZYG3RR.mjs} +197 -8
  63. package/dist/{retired-settings-keys-CV4QVdXj.mjs → retired-settings-keys-Bi0ZKBjb.mjs} +1 -1
  64. package/dist/{retired-settings-keys-BfAzWvPC.js → retired-settings-keys-Dp_CyuCW.js} +1 -1
  65. package/package.json +2 -1
@@ -1,4 +1,4 @@
1
- import { IScopedLogger, IStorageProviderImpl, StorageLocation, StorageLocationDeclaration, StorageLocationRef } from '@camstack/types';
1
+ import { IScopedLogger, IStorageProviderImpl, StorageAccess, StorageLocation, StorageLocationDeclaration, StorageLocationRef } from '@camstack/types';
2
2
  import { ILocationStore } from './location-store.js';
3
3
  export interface ListLocationsFilter {
4
4
  readonly type?: string;
@@ -14,6 +14,12 @@ export interface ListLocationsFilter {
14
14
  */
15
15
  export interface DeclarationSource {
16
16
  cardinalityOf(id: string): 'single' | 'multi' | null;
17
+ /**
18
+ * Effective {@link StorageAccess} of a declared location kind — the
19
+ * constraint that decides which providers may back it. `null` = the kind
20
+ * was never declared. See `upsertLocation`'s remote-provider refusal.
21
+ */
22
+ accessOf(id: string): StorageAccess | null;
17
23
  list(): readonly StorageLocationDeclaration[];
18
24
  }
19
25
  /**
@@ -252,6 +258,36 @@ export declare class StorageOrchestratorService {
252
258
  * implicitly-demoted siblings are persisted before the in-memory map
253
259
  * mutation returns. Persistence errors propagate to the caller.
254
260
  */
261
+ /**
262
+ * Refuse a `(location kind, provider)` pair the kind cannot use.
263
+ *
264
+ * The rule, in one line: a `'local-path'` kind requires a provider whose
265
+ * `getProviderInfo().nodeLocal` is `true`.
266
+ *
267
+ * `nodeLocal` is the honest name for "this provider's `resolve` returns a
268
+ * path on the filesystem of the node that resolved it". The
269
+ * `storage-provider` cap's own discriminated union already forces every
270
+ * provider to declare it, and all four remote providers declare `false`, so
271
+ * no new cap surface is needed to ask the question.
272
+ *
273
+ * Three-valued on purpose. Only a POSITIVE `false` refuses:
274
+ * - `true` → node-local, always fine.
275
+ * - `false` → the provider is known and known to be remote. REFUSE.
276
+ * - `undefined` → the provider has not registered yet (early boot, an addon
277
+ * still loading). That is "unknown", not "remote", and a read that could
278
+ * not be made must never destroy work (D49) — the system seed runs
279
+ * through this path before any provider registers. Allowed, and logged,
280
+ * so the allowance is never silent.
281
+ *
282
+ * The DECLARATION side is read the same way. A kind the registry does not
283
+ * know is `local-path` (fail-closed: an unknown kind is not a permissive
284
+ * one), but NO REGISTRY AT ALL is a different statement — nothing has been
285
+ * loaded, so nothing can be concluded about any kind. The addon injects the
286
+ * registry inside `onInitialize`, before the `storage` cap is mounted, so
287
+ * there is no window in which an operator upsert sees this branch; a service
288
+ * constructed without one is the in-memory/early-boot path.
289
+ */
290
+ private refuseIncompatibleProvider;
255
291
  upsertLocation(input: Omit<StorageLocation, 'createdAt' | 'updatedAt'>): StorageLocation;
256
292
  /**
257
293
  * Remove a location. Refuses to remove the default of a type unless a
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-CDgIzo82.js");
6
+ const require_dist = require("../../dist-Ck2jkBZk.js");
7
7
  //#region src/builtins/system-config/system-config.addon.ts
8
8
  /**
9
9
  * Built-in `system-config` addon — Phase 4 of the settings redesign.
@@ -1,4 +1,4 @@
1
- import { Kt as hydrateSchema, Ot as errMsg, kt as BaseAddon } from "../../dist-LvKus-mT.mjs";
1
+ import { Mt as BaseAddon, Yt as hydrateSchema, jt as errMsg } from "../../dist-DLh4_rn3.mjs";
2
2
  //#region src/builtins/system-config/system-config.addon.ts
3
3
  /**
4
4
  * Built-in `system-config` addon — Phase 4 of the settings redesign.
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-CDgIzo82.js");
6
+ const require_dist = require("../../dist-Ck2jkBZk.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  let node_path = require("node:path");
9
9
  node_path = require_chunk.__toESM(node_path);
@@ -1,4 +1,4 @@
1
- import { kt as BaseAddon, rt as logDestinationCapability } from "../../dist-LvKus-mT.mjs";
1
+ import { Mt as BaseAddon, ot as logDestinationCapability } from "../../dist-DLh4_rn3.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  import * as path$1 from "node:path";
4
4
  import path from "node:path";