@camstack/addon-remote-storage 1.2.31 → 1.2.32

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/s3.addon.js CHANGED
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_shared = require("./shared-Dry6vSuS.js");
5
+ const require_shared = require("./shared-DAXIRHbO.js");
6
6
  let node_stream = require("node:stream");
7
7
  let _aws_sdk_client_s3 = require("@aws-sdk/client-s3");
8
8
  let _aws_sdk_lib_storage = require("@aws-sdk/lib-storage");
package/dist/s3.addon.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { c as BaseAddon, i as rearmIdleAbort, n as getOptionalBasePath, o as scheduleIdleAbort, s as storageProviderCapability, t as createSessionId } from "./shared-Mt26R5Yt.mjs";
1
+ import { c as BaseAddon, i as rearmIdleAbort, n as getOptionalBasePath, o as scheduleIdleAbort, s as storageProviderCapability, t as createSessionId } from "./shared-DQd7nvIG.mjs";
2
2
  import { PassThrough } from "node:stream";
3
3
  import { DeleteObjectCommand, GetObjectCommand, HeadBucketCommand, HeadObjectCommand, ListObjectsV2Command, PutObjectCommand, S3Client } from "@aws-sdk/client-s3";
4
4
  import { Upload } from "@aws-sdk/lib-storage";
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_shared = require("./shared-Dry6vSuS.js");
5
+ const require_shared = require("./shared-DAXIRHbO.js");
6
6
  let ssh2 = require("ssh2");
7
7
  let node_path = require("node:path");
8
8
  node_path = require_shared.__toESM(node_path);
@@ -1,4 +1,4 @@
1
- import { a as safeJoinRemotePath, c as BaseAddon, i as rearmIdleAbort, o as scheduleIdleAbort, r as getRequiredBasePath, s as storageProviderCapability, t as createSessionId } from "./shared-Mt26R5Yt.mjs";
1
+ import { a as safeJoinRemotePath, c as BaseAddon, i as rearmIdleAbort, o as scheduleIdleAbort, r as getRequiredBasePath, s as storageProviderCapability, t as createSessionId } from "./shared-DQd7nvIG.mjs";
2
2
  import { Client } from "ssh2";
3
3
  import * as path from "node:path";
4
4
  //#region src/providers/sftp/sftp-config-schema.ts
@@ -26180,17 +26180,60 @@ var SetSiteLocationInputSchema = object({
26180
26180
  longitude: number().min(-180).max(180)
26181
26181
  }).nullable();
26182
26182
  /**
26183
- * One `(procedure, user-agent, ip, principal)` tuple of the HTTP request
26183
+ * The TRANSPORT a call arrived on.
26184
+ *
26185
+ * Every counted call carries exactly one of these, and `unknown` is a PLANE
26186
+ * rather than a gap: a plane that cannot attribute a call declares it here, so
26187
+ * the call lands in a named bucket instead of vanishing. `planes` summing to
26188
+ * `procedureCalls` is what makes "the sum of the planes explains the total"
26189
+ * checkable rather than asserted.
26190
+ *
26191
+ * - `http` — the Fastify tRPC plugin (`/trpc/*`), one context per request.
26192
+ * - `ws` — `applyWSSHandler`, counted per OPERATION rather than per
26193
+ * connection; the viewer talks to the hub over `wsLink`
26194
+ * exclusively, so this is the plane the HTTP census could not see.
26195
+ * - `mesh` — the in-process `$core-caps` bridge (`createCaller`), which
26196
+ * never touches a socket and therefore never touched a census.
26197
+ * - `unknown` — counted, plane undecidable. No hook produces it today, and
26198
+ * that is exactly what its `0` asserts: every plane the hub has can name
26199
+ * itself. It is an output bucket, never a knob — a call that arrives on a
26200
+ * plane nobody instrumented lands here instead of vanishing from the total.
26201
+ */
26202
+ var TransportPlaneSchema = _enum([
26203
+ "http",
26204
+ "ws",
26205
+ "mesh",
26206
+ "unknown"
26207
+ ]);
26208
+ /**
26209
+ * Calls per plane. Every key is always present, `0` included — an absent plane
26210
+ * reads as "not instrumented", which is the one thing this census must never
26211
+ * make an operator wonder about.
26212
+ */
26213
+ var TransportPlaneCountsSchema = object({
26214
+ http: number(),
26215
+ ws: number(),
26216
+ mesh: number(),
26217
+ unknown: number()
26218
+ });
26219
+ /**
26220
+ * One `(plane, procedure, user-agent, ip, principal)` tuple of the transport
26184
26221
  * census. `principal` is the DERIVED identity (`apocaliss92 (admin)`,
26185
26222
  * `scoped:1a2b3c4d (scoped-token)`, `anonymous`) that the tRPC error log
26186
26223
  * already prints - never a token, never an `Authorization` header.
26224
+ *
26225
+ * `subscriptions` is counted APART from `calls`: a subscription is opened once
26226
+ * and lives for hours, so folding it into a call count makes one long-lived
26227
+ * stream look like a storm.
26187
26228
  */
26188
26229
  var RequestCensusGroupSchema = object({
26230
+ plane: TransportPlaneSchema,
26189
26231
  procedure: string(),
26190
26232
  userAgent: string(),
26191
26233
  ip: string(),
26192
26234
  principal: string(),
26193
26235
  calls: number(),
26236
+ subscriptions: number(),
26194
26237
  perMin: number()
26195
26238
  });
26196
26239
  /**
@@ -26203,6 +26246,14 @@ var RequestCensusGroupSchema = object({
26203
26246
  var RequestCensusProcedureSchema = object({
26204
26247
  procedure: string(),
26205
26248
  calls: number(),
26249
+ /**
26250
+ * The same total, split by transport. THIS is the row that answers the
26251
+ * question the census exists for: one look at `deviceManager.listAll` says
26252
+ * which plane carried the 4 960, without joining two log lines by eye.
26253
+ */
26254
+ planes: TransportPlaneCountsSchema,
26255
+ /** Subscription STARTS on this procedure. Never folded into `calls`. */
26256
+ subscriptions: number(),
26206
26257
  perMin: number()
26207
26258
  });
26208
26259
  /**
@@ -26230,14 +26281,45 @@ var RequestCensusStatusSchema = object({
26230
26281
  */
26231
26282
  procedureCalls: number(),
26232
26283
  /**
26284
+ * `procedureCalls` split by transport. The four keys sum to
26285
+ * `procedureCalls` by construction - {@link RequestCensusSnapshotSchema}'s
26286
+ * `planesExplainTotal` is that identity, checked rather than assumed.
26287
+ */
26288
+ planes: TransportPlaneCountsSchema,
26289
+ /**
26290
+ * True iff `planes` sums to `procedureCalls`. False means a call was counted
26291
+ * on no plane at all - which is a RESULT (a plane is missing from the
26292
+ * instrument), not a failure, and it has to be visible to be read as one.
26293
+ */
26294
+ planesExplainTotal: boolean(),
26295
+ /**
26233
26296
  * tRPC WebSocket connections opened during the window. NOT calls - the WS
26234
- * transport resolves one context per connection - but the number that says
26235
- * whether a plane this census cannot see was busy while HTTP was quiet.
26297
+ * adapter resolves one context per connection - kept because a plane's call
26298
+ * count of zero against 37 open connections says something different from a
26299
+ * plane with no connections at all.
26236
26300
  */
26237
26301
  wsConnections: number(),
26302
+ /**
26303
+ * Client frames the WS plane looked at. `wsMessages` far above
26304
+ * `planes.ws + subscriptions` means most traffic is not operations
26305
+ * (keepalives, connection params) - which is itself an answer.
26306
+ */
26307
+ wsMessages: number(),
26308
+ /**
26309
+ * Subscription STARTS across every plane, excluded from `procedureCalls` on
26310
+ * purpose: one live-events stream opened at boot and held for six hours is
26311
+ * one subscription, and counting it as a call would let a quiet plane
26312
+ * masquerade as the storm.
26313
+ */
26314
+ subscriptions: number(),
26315
+ /** `subscription.stop` frames. Starts minus stops is what is still open. */
26316
+ subscriptionStops: number(),
26238
26317
  distinctGroups: number(),
26239
- /** Calls counted in the totals whose group attribution was shed at the
26240
- * cardinality bound. */
26318
+ /**
26319
+ * Operations counted in the totals whose CALLER attribution was shed at the
26320
+ * cardinality bound. Unrelated to the `unknown` PLANE: these calls know
26321
+ * which transport they arrived on, they just lost their group row.
26322
+ */
26241
26323
  unattributedCalls: number(),
26242
26324
  procedures: array(RequestCensusProcedureSchema).readonly(),
26243
26325
  groups: array(RequestCensusGroupSchema).readonly()
@@ -26157,17 +26157,60 @@ var SetSiteLocationInputSchema = object({
26157
26157
  longitude: number().min(-180).max(180)
26158
26158
  }).nullable();
26159
26159
  /**
26160
- * One `(procedure, user-agent, ip, principal)` tuple of the HTTP request
26160
+ * The TRANSPORT a call arrived on.
26161
+ *
26162
+ * Every counted call carries exactly one of these, and `unknown` is a PLANE
26163
+ * rather than a gap: a plane that cannot attribute a call declares it here, so
26164
+ * the call lands in a named bucket instead of vanishing. `planes` summing to
26165
+ * `procedureCalls` is what makes "the sum of the planes explains the total"
26166
+ * checkable rather than asserted.
26167
+ *
26168
+ * - `http` — the Fastify tRPC plugin (`/trpc/*`), one context per request.
26169
+ * - `ws` — `applyWSSHandler`, counted per OPERATION rather than per
26170
+ * connection; the viewer talks to the hub over `wsLink`
26171
+ * exclusively, so this is the plane the HTTP census could not see.
26172
+ * - `mesh` — the in-process `$core-caps` bridge (`createCaller`), which
26173
+ * never touches a socket and therefore never touched a census.
26174
+ * - `unknown` — counted, plane undecidable. No hook produces it today, and
26175
+ * that is exactly what its `0` asserts: every plane the hub has can name
26176
+ * itself. It is an output bucket, never a knob — a call that arrives on a
26177
+ * plane nobody instrumented lands here instead of vanishing from the total.
26178
+ */
26179
+ var TransportPlaneSchema = _enum([
26180
+ "http",
26181
+ "ws",
26182
+ "mesh",
26183
+ "unknown"
26184
+ ]);
26185
+ /**
26186
+ * Calls per plane. Every key is always present, `0` included — an absent plane
26187
+ * reads as "not instrumented", which is the one thing this census must never
26188
+ * make an operator wonder about.
26189
+ */
26190
+ var TransportPlaneCountsSchema = object({
26191
+ http: number(),
26192
+ ws: number(),
26193
+ mesh: number(),
26194
+ unknown: number()
26195
+ });
26196
+ /**
26197
+ * One `(plane, procedure, user-agent, ip, principal)` tuple of the transport
26161
26198
  * census. `principal` is the DERIVED identity (`apocaliss92 (admin)`,
26162
26199
  * `scoped:1a2b3c4d (scoped-token)`, `anonymous`) that the tRPC error log
26163
26200
  * already prints - never a token, never an `Authorization` header.
26201
+ *
26202
+ * `subscriptions` is counted APART from `calls`: a subscription is opened once
26203
+ * and lives for hours, so folding it into a call count makes one long-lived
26204
+ * stream look like a storm.
26164
26205
  */
26165
26206
  var RequestCensusGroupSchema = object({
26207
+ plane: TransportPlaneSchema,
26166
26208
  procedure: string(),
26167
26209
  userAgent: string(),
26168
26210
  ip: string(),
26169
26211
  principal: string(),
26170
26212
  calls: number(),
26213
+ subscriptions: number(),
26171
26214
  perMin: number()
26172
26215
  });
26173
26216
  /**
@@ -26180,6 +26223,14 @@ var RequestCensusGroupSchema = object({
26180
26223
  var RequestCensusProcedureSchema = object({
26181
26224
  procedure: string(),
26182
26225
  calls: number(),
26226
+ /**
26227
+ * The same total, split by transport. THIS is the row that answers the
26228
+ * question the census exists for: one look at `deviceManager.listAll` says
26229
+ * which plane carried the 4 960, without joining two log lines by eye.
26230
+ */
26231
+ planes: TransportPlaneCountsSchema,
26232
+ /** Subscription STARTS on this procedure. Never folded into `calls`. */
26233
+ subscriptions: number(),
26183
26234
  perMin: number()
26184
26235
  });
26185
26236
  /**
@@ -26207,14 +26258,45 @@ var RequestCensusStatusSchema = object({
26207
26258
  */
26208
26259
  procedureCalls: number(),
26209
26260
  /**
26261
+ * `procedureCalls` split by transport. The four keys sum to
26262
+ * `procedureCalls` by construction - {@link RequestCensusSnapshotSchema}'s
26263
+ * `planesExplainTotal` is that identity, checked rather than assumed.
26264
+ */
26265
+ planes: TransportPlaneCountsSchema,
26266
+ /**
26267
+ * True iff `planes` sums to `procedureCalls`. False means a call was counted
26268
+ * on no plane at all - which is a RESULT (a plane is missing from the
26269
+ * instrument), not a failure, and it has to be visible to be read as one.
26270
+ */
26271
+ planesExplainTotal: boolean(),
26272
+ /**
26210
26273
  * tRPC WebSocket connections opened during the window. NOT calls - the WS
26211
- * transport resolves one context per connection - but the number that says
26212
- * whether a plane this census cannot see was busy while HTTP was quiet.
26274
+ * adapter resolves one context per connection - kept because a plane's call
26275
+ * count of zero against 37 open connections says something different from a
26276
+ * plane with no connections at all.
26213
26277
  */
26214
26278
  wsConnections: number(),
26279
+ /**
26280
+ * Client frames the WS plane looked at. `wsMessages` far above
26281
+ * `planes.ws + subscriptions` means most traffic is not operations
26282
+ * (keepalives, connection params) - which is itself an answer.
26283
+ */
26284
+ wsMessages: number(),
26285
+ /**
26286
+ * Subscription STARTS across every plane, excluded from `procedureCalls` on
26287
+ * purpose: one live-events stream opened at boot and held for six hours is
26288
+ * one subscription, and counting it as a call would let a quiet plane
26289
+ * masquerade as the storm.
26290
+ */
26291
+ subscriptions: number(),
26292
+ /** `subscription.stop` frames. Starts minus stops is what is still open. */
26293
+ subscriptionStops: number(),
26215
26294
  distinctGroups: number(),
26216
- /** Calls counted in the totals whose group attribution was shed at the
26217
- * cardinality bound. */
26295
+ /**
26296
+ * Operations counted in the totals whose CALLER attribution was shed at the
26297
+ * cardinality bound. Unrelated to the `unknown` PLANE: these calls know
26298
+ * which transport they arrived on, they just lost their group row.
26299
+ */
26218
26300
  unattributedCalls: number(),
26219
26301
  procedures: array(RequestCensusProcedureSchema).readonly(),
26220
26302
  groups: array(RequestCensusGroupSchema).readonly()
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_shared = require("./shared-Dry6vSuS.js");
5
+ const require_shared = require("./shared-DAXIRHbO.js");
6
6
  let node_stream = require("node:stream");
7
7
  let webdav = require("webdav");
8
8
  //#region src/providers/webdav/webdav-config-schema.ts
@@ -1,4 +1,4 @@
1
- import { a as safeJoinRemotePath, c as BaseAddon, i as rearmIdleAbort, o as scheduleIdleAbort, r as getRequiredBasePath, s as storageProviderCapability, t as createSessionId } from "./shared-Mt26R5Yt.mjs";
1
+ import { a as safeJoinRemotePath, c as BaseAddon, i as rearmIdleAbort, o as scheduleIdleAbort, r as getRequiredBasePath, s as storageProviderCapability, t as createSessionId } from "./shared-DQd7nvIG.mjs";
2
2
  import { PassThrough } from "node:stream";
3
3
  import { AuthType, createClient } from "webdav";
4
4
  //#region src/providers/webdav/webdav-config-schema.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-remote-storage",
3
- "version": "1.2.31",
3
+ "version": "1.2.32",
4
4
  "description": "Remote storage providers (SFTP, S3, WebDAV) — unifies remote backends behind the storage-provider cap",
5
5
  "keywords": [
6
6
  "camstack",