@camstack/system 1.2.349 → 1.2.350

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 (68) hide show
  1. package/dist/addon-runner.js +2 -2
  2. package/dist/addon-runner.mjs +1 -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.d.ts +8 -0
  8. package/dist/builtins/alerts/alerts.addon.js +146 -31
  9. package/dist/builtins/alerts/alerts.addon.mjs +146 -31
  10. package/dist/builtins/alerts/device-label.d.ts +8 -0
  11. package/dist/builtins/autotrack/index.js +1 -1
  12. package/dist/builtins/autotrack/index.mjs +1 -1
  13. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
  14. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
  15. package/dist/builtins/calendars/calendars.addon.js +1 -1
  16. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  17. package/dist/builtins/camera-grid/index.js +1 -1
  18. package/dist/builtins/camera-grid/index.mjs +1 -1
  19. package/dist/builtins/composer/composer.addon.js +2 -2
  20. package/dist/builtins/composer/composer.addon.mjs +2 -2
  21. package/dist/builtins/console-logging/index.js +1 -1
  22. package/dist/builtins/console-logging/index.mjs +1 -1
  23. package/dist/builtins/core-blocks/block-type-defs.d.ts +20 -5
  24. package/dist/builtins/core-blocks/core-blocks.addon.js +171 -26
  25. package/dist/builtins/core-blocks/core-blocks.addon.mjs +171 -26
  26. package/dist/builtins/device-manager/device-bindings-store.d.ts +3 -1
  27. package/dist/builtins/device-manager/device-manager.addon.js +4 -56
  28. package/dist/builtins/device-manager/device-manager.addon.mjs +4 -56
  29. package/dist/builtins/hub-forwarder/index.js +1 -1
  30. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  31. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +7 -0
  32. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +8 -4
  33. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +8 -4
  34. package/dist/builtins/local-auth/local-auth.addon.js +1 -1
  35. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  36. package/dist/builtins/local-network/local-network.addon.js +1 -1
  37. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  38. package/dist/builtins/loki-logging/index.js +1 -1
  39. package/dist/builtins/loki-logging/index.mjs +1 -1
  40. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  41. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  42. package/dist/builtins/platform-probe/index.js +1 -1
  43. package/dist/builtins/platform-probe/index.mjs +1 -1
  44. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  45. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  46. package/dist/builtins/snapshot/index.js +1 -1
  47. package/dist/builtins/snapshot/index.mjs +1 -1
  48. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  49. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  50. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  51. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  52. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  53. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  54. package/dist/builtins/system-config/system-config.addon.js +1 -1
  55. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  56. package/dist/builtins/winston-logging/index.js +1 -1
  57. package/dist/builtins/winston-logging/index.mjs +1 -1
  58. package/dist/{child-cap-dispatch-DiDBYNY4.js → child-cap-dispatch-CYgHiMdj.js} +1 -1
  59. package/dist/{child-cap-dispatch-Pkx_sEKR.mjs → child-cap-dispatch-zEt3rqy-.mjs} +1 -1
  60. package/dist/{composition-sources-w_NIID5d.js → composition-sources-DyxH-DLr.js} +1 -1
  61. package/dist/{composition-sources-DK-hFG7I.mjs → composition-sources-d7zXAC70.mjs} +1 -1
  62. package/dist/{dist-DvAczrLl.js → dist-DZKm2EOp.js} +94 -3
  63. package/dist/{dist-C6CPaa8G.mjs → dist-Di0aX2zy.mjs} +94 -3
  64. package/dist/index.js +2 -2
  65. package/dist/index.mjs +2 -2
  66. package/dist/{retired-settings-keys-BQYjCJWI.js → retired-settings-keys-BEY9Wjf1.js} +1 -1
  67. package/dist/{retired-settings-keys-tmMQQ9OH.mjs → retired-settings-keys-jzB4iJpq.mjs} +1 -1
  68. package/package.json +1 -1
@@ -710,7 +710,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
710
710
  return EventCategory;
711
711
  }({});
712
712
  //#endregion
713
- //#region ../types/dist/sleep-CDCONfkt.mjs
713
+ //#region ../types/dist/sleep-DXKLNFvA.mjs
714
714
  /**
715
715
  * The audio chunk plane's byte format, and the ONE expansion from a coded
716
716
  * window to float samples (D455).
@@ -1019,6 +1019,43 @@ function hydrateField(field, values) {
1019
1019
  }
1020
1020
  const rawValue = storedValue !== void 0 ? storedValue : defaultValue !== void 0 ? defaultValue : null;
1021
1021
  const value = field.type === "textarea" && field.isJson && rawValue !== null && typeof rawValue === "object" ? JSON.stringify(rawValue, null, 2) : rawValue;
1022
+ if (field.type === "tags" && typeof field.suggestionsFrom === "string") {
1023
+ const from = values[field.suggestionsFrom];
1024
+ const extra = Array.isArray(from) ? from.filter((s) => typeof s === "string" && s.length > 0) : [];
1025
+ const merged = [...new Set([...field.suggestions ?? [], ...extra])];
1026
+ return {
1027
+ ...field,
1028
+ suggestions: merged,
1029
+ value
1030
+ };
1031
+ }
1032
+ if ((field.type === "select" || field.type === "multiselect") && typeof field.optionsFrom === "string") {
1033
+ const from = values[field.optionsFrom];
1034
+ const byValue = /* @__PURE__ */ new Map();
1035
+ for (const opt of field.options) byValue.set(opt.value, opt);
1036
+ if (Array.isArray(from)) for (const entry of from) {
1037
+ if (typeof entry === "string" && entry.length > 0) {
1038
+ if (!byValue.has(entry)) byValue.set(entry, {
1039
+ value: entry,
1040
+ label: entry
1041
+ });
1042
+ continue;
1043
+ }
1044
+ if (entry === null || typeof entry !== "object") continue;
1045
+ const v = Reflect.get(entry, "value");
1046
+ const lbl = Reflect.get(entry, "label");
1047
+ if (typeof v !== "string" || v.length === 0) continue;
1048
+ if (!byValue.has(v)) byValue.set(v, {
1049
+ value: v,
1050
+ label: typeof lbl === "string" && lbl.length > 0 ? lbl : v
1051
+ });
1052
+ }
1053
+ return {
1054
+ ...field,
1055
+ options: [...byValue.values()],
1056
+ value
1057
+ };
1058
+ }
1022
1059
  return {
1023
1060
  ...field,
1024
1061
  value
@@ -19082,6 +19119,17 @@ var SendResultSchema = zod.z.object({
19082
19119
  });
19083
19120
  /** Same shape as SendResult — kept as a distinct name for the test panel. */
19084
19121
  var TestResultSchema = SendResultSchema;
19122
+ /**
19123
+ * Pre-save credential probe against a partial (unsaved) target config.
19124
+ * `resolvedUrl` never includes secrets (token stripped from path).
19125
+ */
19126
+ var ProbeTargetConfigResultSchema = zod.z.object({
19127
+ ok: zod.z.boolean(),
19128
+ resolvedUrl: zod.z.string(),
19129
+ httpStatus: zod.z.number().int().optional(),
19130
+ stateInstance: zod.z.string().optional(),
19131
+ error: zod.z.string().optional()
19132
+ });
19085
19133
  var notificationOutputCapability = {
19086
19134
  name: "notification-output",
19087
19135
  scope: "system",
@@ -19089,10 +19137,32 @@ var notificationOutputCapability = {
19089
19137
  methods: {
19090
19138
  listTargetKinds: method(zod.z.object({}), zod.z.array(TargetKindSchema)),
19091
19139
  listTargets: method(zod.z.object({}), zod.z.array(TargetSchema), { auth: "admin" }),
19140
+ /**
19141
+ * One target WITH secrets — admin edit / duplicate hydration only.
19142
+ * `listTargets` stays redacted; the editor loads this so password fields
19143
+ * are filled (masked in the input) and a save can round-trip the token
19144
+ * when a destination changes (Duplicate with a new chatId, etc.).
19145
+ */
19146
+ getTarget: method(zod.z.object({ targetId: zod.z.string() }), TargetSchema, { auth: "admin" }),
19092
19147
  discoverTargets: method(zod.z.object({
19093
19148
  kind: zod.z.string(),
19094
- config: zod.z.record(zod.z.string(), zod.z.unknown()).optional()
19149
+ config: zod.z.record(zod.z.string(), zod.z.unknown()).optional(),
19150
+ /**
19151
+ * When editing / duplicating, the blank password field never round-trips
19152
+ * the stored token. Pass the source target id so the provider can restore
19153
+ * secrets server-side before dialling (same merge as upsert).
19154
+ */
19155
+ targetId: zod.z.string().optional()
19095
19156
  }), zod.z.array(DiscoveredTargetSchema), { auth: "admin" }),
19157
+ probeTargetConfig: method(zod.z.object({
19158
+ kind: zod.z.string(),
19159
+ config: zod.z.record(zod.z.string(), zod.z.unknown()),
19160
+ /** See `discoverTargets.targetId` — restore stored secrets for a blank password. */
19161
+ targetId: zod.z.string().optional()
19162
+ }), ProbeTargetConfigResultSchema, {
19163
+ kind: "mutation",
19164
+ auth: "admin"
19165
+ }),
19096
19166
  send: method(zod.z.object({
19097
19167
  targetId: zod.z.string(),
19098
19168
  notification: NotificationSchema
@@ -19107,7 +19177,16 @@ var notificationOutputCapability = {
19107
19177
  kind: "mutation",
19108
19178
  auth: "admin"
19109
19179
  }),
19110
- upsertTarget: method(zod.z.object({ target: TargetSchema }), TargetSchema, {
19180
+ upsertTarget: method(zod.z.object({
19181
+ target: TargetSchema,
19182
+ /**
19183
+ * Duplicate flow: create a NEW target id while copying secrets from an
19184
+ * existing row. The UI never holds the stored token; blank / redacted
19185
+ * password fields are restored from this source (D634 still applies if
19186
+ * destinations diverge without a re-typed secret).
19187
+ */
19188
+ cloneSecretsFrom: zod.z.string().optional()
19189
+ }), TargetSchema, {
19111
19190
  kind: "mutation",
19112
19191
  auth: "admin"
19113
19192
  }),
@@ -50118,6 +50197,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
50118
50197
  addonId: null,
50119
50198
  access: "view"
50120
50199
  },
50200
+ "notificationOutput.getTarget": {
50201
+ capName: "notification-output",
50202
+ capScope: "system",
50203
+ addonId: null,
50204
+ access: "view"
50205
+ },
50121
50206
  "notificationOutput.listTargetKinds": {
50122
50207
  capName: "notification-output",
50123
50208
  capScope: "system",
@@ -50130,6 +50215,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
50130
50215
  addonId: null,
50131
50216
  access: "view"
50132
50217
  },
50218
+ "notificationOutput.probeTargetConfig": {
50219
+ capName: "notification-output",
50220
+ capScope: "system",
50221
+ addonId: null,
50222
+ access: "create"
50223
+ },
50133
50224
  "notificationOutput.send": {
50134
50225
  capName: "notification-output",
50135
50226
  capScope: "system",
@@ -710,7 +710,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
710
710
  return EventCategory;
711
711
  }({});
712
712
  //#endregion
713
- //#region ../types/dist/sleep-CDCONfkt.mjs
713
+ //#region ../types/dist/sleep-DXKLNFvA.mjs
714
714
  /**
715
715
  * The audio chunk plane's byte format, and the ONE expansion from a coded
716
716
  * window to float samples (D455).
@@ -1019,6 +1019,43 @@ function hydrateField(field, values) {
1019
1019
  }
1020
1020
  const rawValue = storedValue !== void 0 ? storedValue : defaultValue !== void 0 ? defaultValue : null;
1021
1021
  const value = field.type === "textarea" && field.isJson && rawValue !== null && typeof rawValue === "object" ? JSON.stringify(rawValue, null, 2) : rawValue;
1022
+ if (field.type === "tags" && typeof field.suggestionsFrom === "string") {
1023
+ const from = values[field.suggestionsFrom];
1024
+ const extra = Array.isArray(from) ? from.filter((s) => typeof s === "string" && s.length > 0) : [];
1025
+ const merged = [...new Set([...field.suggestions ?? [], ...extra])];
1026
+ return {
1027
+ ...field,
1028
+ suggestions: merged,
1029
+ value
1030
+ };
1031
+ }
1032
+ if ((field.type === "select" || field.type === "multiselect") && typeof field.optionsFrom === "string") {
1033
+ const from = values[field.optionsFrom];
1034
+ const byValue = /* @__PURE__ */ new Map();
1035
+ for (const opt of field.options) byValue.set(opt.value, opt);
1036
+ if (Array.isArray(from)) for (const entry of from) {
1037
+ if (typeof entry === "string" && entry.length > 0) {
1038
+ if (!byValue.has(entry)) byValue.set(entry, {
1039
+ value: entry,
1040
+ label: entry
1041
+ });
1042
+ continue;
1043
+ }
1044
+ if (entry === null || typeof entry !== "object") continue;
1045
+ const v = Reflect.get(entry, "value");
1046
+ const lbl = Reflect.get(entry, "label");
1047
+ if (typeof v !== "string" || v.length === 0) continue;
1048
+ if (!byValue.has(v)) byValue.set(v, {
1049
+ value: v,
1050
+ label: typeof lbl === "string" && lbl.length > 0 ? lbl : v
1051
+ });
1052
+ }
1053
+ return {
1054
+ ...field,
1055
+ options: [...byValue.values()],
1056
+ value
1057
+ };
1058
+ }
1022
1059
  return {
1023
1060
  ...field,
1024
1061
  value
@@ -19082,6 +19119,17 @@ var SendResultSchema = z.object({
19082
19119
  });
19083
19120
  /** Same shape as SendResult — kept as a distinct name for the test panel. */
19084
19121
  var TestResultSchema = SendResultSchema;
19122
+ /**
19123
+ * Pre-save credential probe against a partial (unsaved) target config.
19124
+ * `resolvedUrl` never includes secrets (token stripped from path).
19125
+ */
19126
+ var ProbeTargetConfigResultSchema = z.object({
19127
+ ok: z.boolean(),
19128
+ resolvedUrl: z.string(),
19129
+ httpStatus: z.number().int().optional(),
19130
+ stateInstance: z.string().optional(),
19131
+ error: z.string().optional()
19132
+ });
19085
19133
  var notificationOutputCapability = {
19086
19134
  name: "notification-output",
19087
19135
  scope: "system",
@@ -19089,10 +19137,32 @@ var notificationOutputCapability = {
19089
19137
  methods: {
19090
19138
  listTargetKinds: method(z.object({}), z.array(TargetKindSchema)),
19091
19139
  listTargets: method(z.object({}), z.array(TargetSchema), { auth: "admin" }),
19140
+ /**
19141
+ * One target WITH secrets — admin edit / duplicate hydration only.
19142
+ * `listTargets` stays redacted; the editor loads this so password fields
19143
+ * are filled (masked in the input) and a save can round-trip the token
19144
+ * when a destination changes (Duplicate with a new chatId, etc.).
19145
+ */
19146
+ getTarget: method(z.object({ targetId: z.string() }), TargetSchema, { auth: "admin" }),
19092
19147
  discoverTargets: method(z.object({
19093
19148
  kind: z.string(),
19094
- config: z.record(z.string(), z.unknown()).optional()
19149
+ config: z.record(z.string(), z.unknown()).optional(),
19150
+ /**
19151
+ * When editing / duplicating, the blank password field never round-trips
19152
+ * the stored token. Pass the source target id so the provider can restore
19153
+ * secrets server-side before dialling (same merge as upsert).
19154
+ */
19155
+ targetId: z.string().optional()
19095
19156
  }), z.array(DiscoveredTargetSchema), { auth: "admin" }),
19157
+ probeTargetConfig: method(z.object({
19158
+ kind: z.string(),
19159
+ config: z.record(z.string(), z.unknown()),
19160
+ /** See `discoverTargets.targetId` — restore stored secrets for a blank password. */
19161
+ targetId: z.string().optional()
19162
+ }), ProbeTargetConfigResultSchema, {
19163
+ kind: "mutation",
19164
+ auth: "admin"
19165
+ }),
19096
19166
  send: method(z.object({
19097
19167
  targetId: z.string(),
19098
19168
  notification: NotificationSchema
@@ -19107,7 +19177,16 @@ var notificationOutputCapability = {
19107
19177
  kind: "mutation",
19108
19178
  auth: "admin"
19109
19179
  }),
19110
- upsertTarget: method(z.object({ target: TargetSchema }), TargetSchema, {
19180
+ upsertTarget: method(z.object({
19181
+ target: TargetSchema,
19182
+ /**
19183
+ * Duplicate flow: create a NEW target id while copying secrets from an
19184
+ * existing row. The UI never holds the stored token; blank / redacted
19185
+ * password fields are restored from this source (D634 still applies if
19186
+ * destinations diverge without a re-typed secret).
19187
+ */
19188
+ cloneSecretsFrom: z.string().optional()
19189
+ }), TargetSchema, {
19111
19190
  kind: "mutation",
19112
19191
  auth: "admin"
19113
19192
  }),
@@ -50118,6 +50197,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
50118
50197
  addonId: null,
50119
50198
  access: "view"
50120
50199
  },
50200
+ "notificationOutput.getTarget": {
50201
+ capName: "notification-output",
50202
+ capScope: "system",
50203
+ addonId: null,
50204
+ access: "view"
50205
+ },
50121
50206
  "notificationOutput.listTargetKinds": {
50122
50207
  capName: "notification-output",
50123
50208
  capScope: "system",
@@ -50130,6 +50215,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
50130
50215
  addonId: null,
50131
50216
  access: "view"
50132
50217
  },
50218
+ "notificationOutput.probeTargetConfig": {
50219
+ capName: "notification-output",
50220
+ capScope: "system",
50221
+ addonId: null,
50222
+ access: "create"
50223
+ },
50133
50224
  "notificationOutput.send": {
50134
50225
  capName: "notification-output",
50135
50226
  capScope: "system",
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("./chunk-Cek0wNdY.js");
3
- const require_dist = require("./dist-DvAczrLl.js");
3
+ const require_dist = require("./dist-DZKm2EOp.js");
4
4
  const require_builtins_alerts_alerts_addon = require("./builtins/alerts/alerts.addon.js");
5
5
  require("./builtins/alerts/index.js");
6
6
  const require_builtins_calendars_calendars_addon = require("./builtins/calendars/calendars.addon.js");
@@ -31,7 +31,7 @@ require("./builtins/system-config/index.js");
31
31
  const require_builtins_winston_logging_index = require("./builtins/winston-logging/index.js");
32
32
  const require_event_loop_stall_monitor = require("./event-loop-stall-monitor-ey4mbofz.js");
33
33
  const require_tls$1 = require("./tls-ue_Xefmv.js");
34
- const require_child_cap_dispatch = require("./child-cap-dispatch-DiDBYNY4.js");
34
+ const require_child_cap_dispatch = require("./child-cap-dispatch-CYgHiMdj.js");
35
35
  const require_resource_monitor = require("./resource-monitor-BgWGRxN5.js");
36
36
  const require_custom_action_registry = require("./custom-action-registry-acBY3mHA.js");
37
37
  let zod = require("zod");
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM$1, r as __exportAll, t as __commonJSMin$1 } from "./chunk-CNf5ZN-e.mjs";
2
- import { $n as ReadinessRegistry, Bt as lifecycleJobSchema, D as METHOD_ACCESS_MAP, Dt as extractNestedAddonId, Ft as isObjectInput, Gt as looseSchema, It as isVoidInput, Jn as errMsg$1, Lt as kebabToCamel, M as RUNTIME_DEFAULTS, Mt as isArrayOutputSchema, Nt as isCollectionArrayMethod, Qn as DEVICE_STATUS_METHOD, U as addonSettingsCapability, Wt as logLevelAtMost, Xn as DATAPLANE_SECRET_HEADER$1, Zn as DEVICE_SETTINGS_CONTRIBUTION_METHODS, _r as scopeKey, an as procedureAuthKey, ar as createEvent, br as EventCategory$1, cr as expandCapMethods, en as objectInputDeclaresAddonId, er as ReadinessTimeoutError, gn as scopesAllowDeviceCap, gr as resolveCapMount, hn as scopesAllowAddon, hr as readinessKey, ir as asString$1, mr as parseJsonUnknown, nr as asJsonObject$1, or as emitDownForOwnedCaps, pn as resolveMethodAuth, pr as parseJsonObject, rr as asNumber, t as ALL_CAPABILITY_DEFINITIONS, tn as objectInputDeclaresRequiredDeviceId, w as LOG_LEVEL_RANK } from "./dist-C6CPaa8G.mjs";
2
+ import { $n as ReadinessRegistry, Bt as lifecycleJobSchema, D as METHOD_ACCESS_MAP, Dt as extractNestedAddonId, Ft as isObjectInput, Gt as looseSchema, It as isVoidInput, Jn as errMsg$1, Lt as kebabToCamel, M as RUNTIME_DEFAULTS, Mt as isArrayOutputSchema, Nt as isCollectionArrayMethod, Qn as DEVICE_STATUS_METHOD, U as addonSettingsCapability, Wt as logLevelAtMost, Xn as DATAPLANE_SECRET_HEADER$1, Zn as DEVICE_SETTINGS_CONTRIBUTION_METHODS, _r as scopeKey, an as procedureAuthKey, ar as createEvent, br as EventCategory$1, cr as expandCapMethods, en as objectInputDeclaresAddonId, er as ReadinessTimeoutError, gn as scopesAllowDeviceCap, gr as resolveCapMount, hn as scopesAllowAddon, hr as readinessKey, ir as asString$1, mr as parseJsonUnknown, nr as asJsonObject$1, or as emitDownForOwnedCaps, pn as resolveMethodAuth, pr as parseJsonObject, rr as asNumber, t as ALL_CAPABILITY_DEFINITIONS, tn as objectInputDeclaresRequiredDeviceId, w as LOG_LEVEL_RANK } from "./dist-Di0aX2zy.mjs";
3
3
  import { AlertCenterAddon } from "./builtins/alerts/alerts.addon.mjs";
4
4
  import "./builtins/alerts/index.mjs";
5
5
  import { CalendarsAddon } from "./builtins/calendars/calendars.addon.mjs";
@@ -30,7 +30,7 @@ import "./builtins/system-config/index.mjs";
30
30
  import { WinstonDestination, WinstonLoggingAddon } from "./builtins/winston-logging/index.mjs";
31
31
  import { _ as ensureModel, a as createFileDataPlaneHandler, c as parseRangeHeader, d as ModelDownloadService, g as downloadModel, h as downloadFile, i as startEventLoopStallMonitor, l as parseTokenizedUrl, m as deleteModelFromDisk, n as STALL_TICK_MS, o as contentTypeFor, p as collectModelFiles, r as attributeStall, s as createAuthenticatedFileServer, t as STALL_REPORT_MS, u as resolveFilePath, v as fetchJson, x as isModelDownloaded, y as getModelFilePath } from "./event-loop-stall-monitor-EXjzIxDz.mjs";
32
32
  import { C as registerLanHttpHandler, S as readLanHttpState, _ as DEFAULT_LAN_HTTP_PORT, a as writeTlsMode, b as bindPendingLanHttp, c as loadTlsCert, d as collectCertIdentity, f as CA_VALIDITY_DAYS, g as evaluateExistingCert, h as SERVER_AUTH_OID, i as writeExtraSans, l as reissueTlsLeaf, m as MAX_LEAF_VALIDITY_DAYS, n as readTlsAccessStatus, o as validateUploadedTls, p as LEAF_RENEWAL_WINDOW_DAYS, r as readTlsMode, s as ensureTlsCert, t as readExtraSans, u as CA_COMMON_NAME, v as allFamiliesListenHost, x as closeLanHttp, y as applyLanHttp } from "./tls-DTlVWwAI.mjs";
33
- import { $ as CapRouteError, $n as CAP_ACTION_UNLABELLED, $t as RUNNER_HEAP_WATCH_INTERVAL_MS, A as resolveHwAccel, An as OUTBOUND_QUEUE_COOLDOWN_MS, At as serializeTypedArrays, B as udsChildLogToWorkerEntry, Bn as SOCKET_QUEUE_TOP_N, Bt as createAddonPeerBytesFacility, C as getBrokerEventBus, Cn as DECISIVE_HEAP_SPACES, Ct as NATIVE_PROVIDER_SERVICE_INFIX, D as subscribePassthrough, Dn as heapSpaceField, Dt as capServiceName, E as setNodeEventInterest, En as formatHeapSpaces, Et as capBareAction, F as ipcParentLink, Fn as MESH_QUEUE_TOP_N, Ft as installManifestNativeDeps, G as UDS_NO_ROUTE_PREFIX, Gn as readSocketQueues, Gt as HEAP_RECLAIM_TRIGGER_MB, H as createUdsLoggerWithControl, Hn as createSocketPlaneReader, Ht as createAddonDataPlaneFacility, I as localProviderLink, In as createMeshQueueReader, It as resolveAddonClass, J as answerClaimedGetStatus, Jn as recordSocketFrame, Jt as HUB_MAIN_HEAP_WATCH_LABEL, K as afterWorkerOnlineAnnounce, Kn as EMPTY_SOCKET_DIRECTION, Kt as HEAP_WATCH_INTERVAL_MS, L as createParentUnownedCallHandler, Ln as formatMeshQueue, Lt as buildNpmChildEnv, M as brokerTransportLink, Mn as OUTBOUND_QUEUE_THRESHOLD_BYTES, Mt as CapabilityHandle, N as buildLinkChain, Nn as createOutboundQueueGate, Nt as CapabilityUnavailableError, O as AddonDepsManager, On as readHeapSpaces, Ot as parseCapAction, P as deviceCapResolverLink, Pn as formatOutboundQueueVerdict, Pt as copyBundledNativeModules, Q as CapRouteResolver, Qn as CAP_ACTION_OVERFLOW_LABEL, Qt as RSS_BUDGET_RELEASE_RATIO, R as createUdsEventBridge, Rn as EMPTY_SOCKET_PLANE_BASELINE, Rt as resolveNpmInvocation, S as clusterEventTopic, Sn as isArrayBufferCensusReport, St as validateProviderRegistrations, T as registerEventBusService, Tn as emitHeapDiagnosticReport, Tt as capActionSuffix, U as LocalChildClient, Un as diffSocketPlane, Ut as HEAP_RECLAIM_MIN_INTERVAL_MS, V as createUdsLogger, Vn as createSocketPlaneMeter, Vt as hostNodeIdOf, W as LocalChildRegistry, Wn as formatSocketPlane, Wt as HEAP_RECLAIM_STEADY_STATE_INTERVAL_MS, X as AGENT_CAP_FWD_ACTION, Xn as socketDirectionBytes, Xt as HUB_RSS_BUDGET_ENV, Y as deviceOfGetStatus, Yn as sampleSocketDirection, Yt as HUB_MAIN_RSS_BUDGET_MB, Z as AGENT_CAP_FWD_SERVICE, Zn as socketDirectionMessages, Zt as RSS_BUDGET_REANNOUNCE_MIN_MS, _ as getWorkerDeviceRegistry, _n as ARRAY_BUFFER_CENSUS_THRESHOLD_MB, a as reapProcessGroup, an as createV8Reclaimer, ar as EVENT_PLANE_TOP_N, at as __resetCapUsageRegistryForTests, b as setHubConnected, bn as createInspectorArrayBufferCensus, c as runnerOwnsProcessGroup, cn as nextRssBudgetState, cr as diffEventPlane, ct as UdsLocalTransportClient, d as summarizeMembers, dn as shouldReclaim, dt as PeerAnsweredError, en as RUNNER_RSS_BUDGET_ENV, er as EMPTY_CAP_ACTION_READING, et as classifyCapRoute, f as installManifestSystemDeps, fn as startHeapWatch, ft as localEndpointPath, g as createUdsAddonContext, gn as ARRAY_BUFFER_CENSUS_SUSTAIN_MS, gt as createBrokerDeviceManagerApi, h as createAddonContext, hn as ARRAY_BUFFER_CENSUS_COOLDOWN_MS, ht as buildNativeCapProxy, in as createLoopDelayMeter, ir as diffCapActionCensus, it as PARENT_ROUTED_PROVIDER_ADDON_ID, j as brokerCallForCap, jn as OUTBOUND_QUEUE_SUSTAIN_MS, jt as DeviceRegistry, k as createKernelHwAccel, kn as selectReportedSpaces, kt as deserializeTypedArrays, l as signalAllRunnerGroups, ln as parseRssBudgetMb, lr as formatEventPlane, lt as UdsLocalTransportServer, m as adaptBrokerToCluster, mn as strandedMb, mt as encodeFrame, nn as buildHeapSample, nr as capActionLabel, nt as readMoleculerFanoutMode, o as registerRunnerGroup, on as describeRss, or as createEventPlaneMeter, ot as getCapUsageRegistry, p as installManifestPythonDeps, pn as startRunnerHeapWatch, pt as FrameDecoder, q as GET_STATUS_METHOD, qn as createSocketDirectionCounters, qt as HEAP_WATCH_WARN_RATIO, r as defaultProcessGroupOps, rn as createDeferredHeapWatchSink, rr as createCapActionCensus, rt as CapUsageRegistry, s as releaseRunnerGroup, sn as hubMainRssBudget, sr as createEventPlaneReader, st as createLocalTransport, t as CAP_METHOD_NOT_IMPLEMENTED, tn as ZERO_LOOP_DELAY, tr as MAX_CAP_ACTIONS_PER_PEER, tt as callWithServiceDiscovery, un as reclaimIntervalMs, ut as SocketChannel, v as getOrInitReadinessRegistry, vn as ARRAY_BUFFER_RELEASE_MIN_DROP_RATIO, w as getMoleculerEventStats, wn as HEAP_SPACE_REPORT_MIN_MB, wt as capActionName, x as EVENT_TOPIC_PREFIX, xn as formatArrayBufferCensus, xt as createAddonService, y as getOrInitReadinessRegistryForClient, yn as createArrayBufferCensusGate, yt as mountNativeCapService, z as createUdsEventBus, zn as SOCKET_PLANE_TOP_N, zt as runNpm } from "./child-cap-dispatch-Pkx_sEKR.mjs";
33
+ import { $ as CapRouteError, $n as CAP_ACTION_UNLABELLED, $t as RUNNER_HEAP_WATCH_INTERVAL_MS, A as resolveHwAccel, An as OUTBOUND_QUEUE_COOLDOWN_MS, At as serializeTypedArrays, B as udsChildLogToWorkerEntry, Bn as SOCKET_QUEUE_TOP_N, Bt as createAddonPeerBytesFacility, C as getBrokerEventBus, Cn as DECISIVE_HEAP_SPACES, Ct as NATIVE_PROVIDER_SERVICE_INFIX, D as subscribePassthrough, Dn as heapSpaceField, Dt as capServiceName, E as setNodeEventInterest, En as formatHeapSpaces, Et as capBareAction, F as ipcParentLink, Fn as MESH_QUEUE_TOP_N, Ft as installManifestNativeDeps, G as UDS_NO_ROUTE_PREFIX, Gn as readSocketQueues, Gt as HEAP_RECLAIM_TRIGGER_MB, H as createUdsLoggerWithControl, Hn as createSocketPlaneReader, Ht as createAddonDataPlaneFacility, I as localProviderLink, In as createMeshQueueReader, It as resolveAddonClass, J as answerClaimedGetStatus, Jn as recordSocketFrame, Jt as HUB_MAIN_HEAP_WATCH_LABEL, K as afterWorkerOnlineAnnounce, Kn as EMPTY_SOCKET_DIRECTION, Kt as HEAP_WATCH_INTERVAL_MS, L as createParentUnownedCallHandler, Ln as formatMeshQueue, Lt as buildNpmChildEnv, M as brokerTransportLink, Mn as OUTBOUND_QUEUE_THRESHOLD_BYTES, Mt as CapabilityHandle, N as buildLinkChain, Nn as createOutboundQueueGate, Nt as CapabilityUnavailableError, O as AddonDepsManager, On as readHeapSpaces, Ot as parseCapAction, P as deviceCapResolverLink, Pn as formatOutboundQueueVerdict, Pt as copyBundledNativeModules, Q as CapRouteResolver, Qn as CAP_ACTION_OVERFLOW_LABEL, Qt as RSS_BUDGET_RELEASE_RATIO, R as createUdsEventBridge, Rn as EMPTY_SOCKET_PLANE_BASELINE, Rt as resolveNpmInvocation, S as clusterEventTopic, Sn as isArrayBufferCensusReport, St as validateProviderRegistrations, T as registerEventBusService, Tn as emitHeapDiagnosticReport, Tt as capActionSuffix, U as LocalChildClient, Un as diffSocketPlane, Ut as HEAP_RECLAIM_MIN_INTERVAL_MS, V as createUdsLogger, Vn as createSocketPlaneMeter, Vt as hostNodeIdOf, W as LocalChildRegistry, Wn as formatSocketPlane, Wt as HEAP_RECLAIM_STEADY_STATE_INTERVAL_MS, X as AGENT_CAP_FWD_ACTION, Xn as socketDirectionBytes, Xt as HUB_RSS_BUDGET_ENV, Y as deviceOfGetStatus, Yn as sampleSocketDirection, Yt as HUB_MAIN_RSS_BUDGET_MB, Z as AGENT_CAP_FWD_SERVICE, Zn as socketDirectionMessages, Zt as RSS_BUDGET_REANNOUNCE_MIN_MS, _ as getWorkerDeviceRegistry, _n as ARRAY_BUFFER_CENSUS_THRESHOLD_MB, a as reapProcessGroup, an as createV8Reclaimer, ar as EVENT_PLANE_TOP_N, at as __resetCapUsageRegistryForTests, b as setHubConnected, bn as createInspectorArrayBufferCensus, c as runnerOwnsProcessGroup, cn as nextRssBudgetState, cr as diffEventPlane, ct as UdsLocalTransportClient, d as summarizeMembers, dn as shouldReclaim, dt as PeerAnsweredError, en as RUNNER_RSS_BUDGET_ENV, er as EMPTY_CAP_ACTION_READING, et as classifyCapRoute, f as installManifestSystemDeps, fn as startHeapWatch, ft as localEndpointPath, g as createUdsAddonContext, gn as ARRAY_BUFFER_CENSUS_SUSTAIN_MS, gt as createBrokerDeviceManagerApi, h as createAddonContext, hn as ARRAY_BUFFER_CENSUS_COOLDOWN_MS, ht as buildNativeCapProxy, in as createLoopDelayMeter, ir as diffCapActionCensus, it as PARENT_ROUTED_PROVIDER_ADDON_ID, j as brokerCallForCap, jn as OUTBOUND_QUEUE_SUSTAIN_MS, jt as DeviceRegistry, k as createKernelHwAccel, kn as selectReportedSpaces, kt as deserializeTypedArrays, l as signalAllRunnerGroups, ln as parseRssBudgetMb, lr as formatEventPlane, lt as UdsLocalTransportServer, m as adaptBrokerToCluster, mn as strandedMb, mt as encodeFrame, nn as buildHeapSample, nr as capActionLabel, nt as readMoleculerFanoutMode, o as registerRunnerGroup, on as describeRss, or as createEventPlaneMeter, ot as getCapUsageRegistry, p as installManifestPythonDeps, pn as startRunnerHeapWatch, pt as FrameDecoder, q as GET_STATUS_METHOD, qn as createSocketDirectionCounters, qt as HEAP_WATCH_WARN_RATIO, r as defaultProcessGroupOps, rn as createDeferredHeapWatchSink, rr as createCapActionCensus, rt as CapUsageRegistry, s as releaseRunnerGroup, sn as hubMainRssBudget, sr as createEventPlaneReader, st as createLocalTransport, t as CAP_METHOD_NOT_IMPLEMENTED, tn as ZERO_LOOP_DELAY, tr as MAX_CAP_ACTIONS_PER_PEER, tt as callWithServiceDiscovery, un as reclaimIntervalMs, ut as SocketChannel, v as getOrInitReadinessRegistry, vn as ARRAY_BUFFER_RELEASE_MIN_DROP_RATIO, w as getMoleculerEventStats, wn as HEAP_SPACE_REPORT_MIN_MB, wt as capActionName, x as EVENT_TOPIC_PREFIX, xn as formatArrayBufferCensus, xt as createAddonService, y as getOrInitReadinessRegistryForClient, yn as createArrayBufferCensusGate, yt as mountNativeCapService, z as createUdsEventBus, zn as SOCKET_PLANE_TOP_N, zt as runNpm } from "./child-cap-dispatch-zEt3rqy-.mjs";
34
34
  import { n as getSinglePidStats, t as getPidStats } from "./resource-monitor-B2WZ8_q9.mjs";
35
35
  import { t as CustomActionRegistry } from "./custom-action-registry-B4Cf4O_X.mjs";
36
36
  import { z } from "zod";
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-DvAczrLl.js");
1
+ const require_dist = require("./dist-DZKm2EOp.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 { nr as asJsonObject } from "./dist-C6CPaa8G.mjs";
1
+ import { nr as asJsonObject } from "./dist-Di0aX2zy.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.349",
3
+ "version": "1.2.350",
4
4
  "description": "Core addon for CamStack — builtins, pipeline, process management, auth, logging, events",
5
5
  "keywords": [
6
6
  "camstack",