@camstack/addon-provider-rademacher 0.2.31 → 0.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/addon.js CHANGED
@@ -29388,17 +29388,60 @@ var SetSiteLocationInputSchema = object({
29388
29388
  longitude: number().min(-180).max(180)
29389
29389
  }).nullable();
29390
29390
  /**
29391
- * One `(procedure, user-agent, ip, principal)` tuple of the HTTP request
29391
+ * The TRANSPORT a call arrived on.
29392
+ *
29393
+ * Every counted call carries exactly one of these, and `unknown` is a PLANE
29394
+ * rather than a gap: a plane that cannot attribute a call declares it here, so
29395
+ * the call lands in a named bucket instead of vanishing. `planes` summing to
29396
+ * `procedureCalls` is what makes "the sum of the planes explains the total"
29397
+ * checkable rather than asserted.
29398
+ *
29399
+ * - `http` — the Fastify tRPC plugin (`/trpc/*`), one context per request.
29400
+ * - `ws` — `applyWSSHandler`, counted per OPERATION rather than per
29401
+ * connection; the viewer talks to the hub over `wsLink`
29402
+ * exclusively, so this is the plane the HTTP census could not see.
29403
+ * - `mesh` — the in-process `$core-caps` bridge (`createCaller`), which
29404
+ * never touches a socket and therefore never touched a census.
29405
+ * - `unknown` — counted, plane undecidable. No hook produces it today, and
29406
+ * that is exactly what its `0` asserts: every plane the hub has can name
29407
+ * itself. It is an output bucket, never a knob — a call that arrives on a
29408
+ * plane nobody instrumented lands here instead of vanishing from the total.
29409
+ */
29410
+ var TransportPlaneSchema = _enum([
29411
+ "http",
29412
+ "ws",
29413
+ "mesh",
29414
+ "unknown"
29415
+ ]);
29416
+ /**
29417
+ * Calls per plane. Every key is always present, `0` included — an absent plane
29418
+ * reads as "not instrumented", which is the one thing this census must never
29419
+ * make an operator wonder about.
29420
+ */
29421
+ var TransportPlaneCountsSchema = object({
29422
+ http: number(),
29423
+ ws: number(),
29424
+ mesh: number(),
29425
+ unknown: number()
29426
+ });
29427
+ /**
29428
+ * One `(plane, procedure, user-agent, ip, principal)` tuple of the transport
29392
29429
  * census. `principal` is the DERIVED identity (`apocaliss92 (admin)`,
29393
29430
  * `scoped:1a2b3c4d (scoped-token)`, `anonymous`) that the tRPC error log
29394
29431
  * already prints - never a token, never an `Authorization` header.
29432
+ *
29433
+ * `subscriptions` is counted APART from `calls`: a subscription is opened once
29434
+ * and lives for hours, so folding it into a call count makes one long-lived
29435
+ * stream look like a storm.
29395
29436
  */
29396
29437
  var RequestCensusGroupSchema = object({
29438
+ plane: TransportPlaneSchema,
29397
29439
  procedure: string(),
29398
29440
  userAgent: string(),
29399
29441
  ip: string(),
29400
29442
  principal: string(),
29401
29443
  calls: number(),
29444
+ subscriptions: number(),
29402
29445
  perMin: number()
29403
29446
  });
29404
29447
  /**
@@ -29411,6 +29454,14 @@ var RequestCensusGroupSchema = object({
29411
29454
  var RequestCensusProcedureSchema = object({
29412
29455
  procedure: string(),
29413
29456
  calls: number(),
29457
+ /**
29458
+ * The same total, split by transport. THIS is the row that answers the
29459
+ * question the census exists for: one look at `deviceManager.listAll` says
29460
+ * which plane carried the 4 960, without joining two log lines by eye.
29461
+ */
29462
+ planes: TransportPlaneCountsSchema,
29463
+ /** Subscription STARTS on this procedure. Never folded into `calls`. */
29464
+ subscriptions: number(),
29414
29465
  perMin: number()
29415
29466
  });
29416
29467
  /**
@@ -29438,14 +29489,45 @@ var RequestCensusStatusSchema = object({
29438
29489
  */
29439
29490
  procedureCalls: number(),
29440
29491
  /**
29492
+ * `procedureCalls` split by transport. The four keys sum to
29493
+ * `procedureCalls` by construction - {@link RequestCensusSnapshotSchema}'s
29494
+ * `planesExplainTotal` is that identity, checked rather than assumed.
29495
+ */
29496
+ planes: TransportPlaneCountsSchema,
29497
+ /**
29498
+ * True iff `planes` sums to `procedureCalls`. False means a call was counted
29499
+ * on no plane at all - which is a RESULT (a plane is missing from the
29500
+ * instrument), not a failure, and it has to be visible to be read as one.
29501
+ */
29502
+ planesExplainTotal: boolean(),
29503
+ /**
29441
29504
  * tRPC WebSocket connections opened during the window. NOT calls - the WS
29442
- * transport resolves one context per connection - but the number that says
29443
- * whether a plane this census cannot see was busy while HTTP was quiet.
29505
+ * adapter resolves one context per connection - kept because a plane's call
29506
+ * count of zero against 37 open connections says something different from a
29507
+ * plane with no connections at all.
29444
29508
  */
29445
29509
  wsConnections: number(),
29510
+ /**
29511
+ * Client frames the WS plane looked at. `wsMessages` far above
29512
+ * `planes.ws + subscriptions` means most traffic is not operations
29513
+ * (keepalives, connection params) - which is itself an answer.
29514
+ */
29515
+ wsMessages: number(),
29516
+ /**
29517
+ * Subscription STARTS across every plane, excluded from `procedureCalls` on
29518
+ * purpose: one live-events stream opened at boot and held for six hours is
29519
+ * one subscription, and counting it as a call would let a quiet plane
29520
+ * masquerade as the storm.
29521
+ */
29522
+ subscriptions: number(),
29523
+ /** `subscription.stop` frames. Starts minus stops is what is still open. */
29524
+ subscriptionStops: number(),
29446
29525
  distinctGroups: number(),
29447
- /** Calls counted in the totals whose group attribution was shed at the
29448
- * cardinality bound. */
29526
+ /**
29527
+ * Operations counted in the totals whose CALLER attribution was shed at the
29528
+ * cardinality bound. Unrelated to the `unknown` PLANE: these calls know
29529
+ * which transport they arrived on, they just lost their group row.
29530
+ */
29449
29531
  unattributedCalls: number(),
29450
29532
  procedures: array(RequestCensusProcedureSchema).readonly(),
29451
29533
  groups: array(RequestCensusGroupSchema).readonly()
package/dist/addon.mjs CHANGED
@@ -29387,17 +29387,60 @@ var SetSiteLocationInputSchema = object({
29387
29387
  longitude: number().min(-180).max(180)
29388
29388
  }).nullable();
29389
29389
  /**
29390
- * One `(procedure, user-agent, ip, principal)` tuple of the HTTP request
29390
+ * The TRANSPORT a call arrived on.
29391
+ *
29392
+ * Every counted call carries exactly one of these, and `unknown` is a PLANE
29393
+ * rather than a gap: a plane that cannot attribute a call declares it here, so
29394
+ * the call lands in a named bucket instead of vanishing. `planes` summing to
29395
+ * `procedureCalls` is what makes "the sum of the planes explains the total"
29396
+ * checkable rather than asserted.
29397
+ *
29398
+ * - `http` — the Fastify tRPC plugin (`/trpc/*`), one context per request.
29399
+ * - `ws` — `applyWSSHandler`, counted per OPERATION rather than per
29400
+ * connection; the viewer talks to the hub over `wsLink`
29401
+ * exclusively, so this is the plane the HTTP census could not see.
29402
+ * - `mesh` — the in-process `$core-caps` bridge (`createCaller`), which
29403
+ * never touches a socket and therefore never touched a census.
29404
+ * - `unknown` — counted, plane undecidable. No hook produces it today, and
29405
+ * that is exactly what its `0` asserts: every plane the hub has can name
29406
+ * itself. It is an output bucket, never a knob — a call that arrives on a
29407
+ * plane nobody instrumented lands here instead of vanishing from the total.
29408
+ */
29409
+ var TransportPlaneSchema = _enum([
29410
+ "http",
29411
+ "ws",
29412
+ "mesh",
29413
+ "unknown"
29414
+ ]);
29415
+ /**
29416
+ * Calls per plane. Every key is always present, `0` included — an absent plane
29417
+ * reads as "not instrumented", which is the one thing this census must never
29418
+ * make an operator wonder about.
29419
+ */
29420
+ var TransportPlaneCountsSchema = object({
29421
+ http: number(),
29422
+ ws: number(),
29423
+ mesh: number(),
29424
+ unknown: number()
29425
+ });
29426
+ /**
29427
+ * One `(plane, procedure, user-agent, ip, principal)` tuple of the transport
29391
29428
  * census. `principal` is the DERIVED identity (`apocaliss92 (admin)`,
29392
29429
  * `scoped:1a2b3c4d (scoped-token)`, `anonymous`) that the tRPC error log
29393
29430
  * already prints - never a token, never an `Authorization` header.
29431
+ *
29432
+ * `subscriptions` is counted APART from `calls`: a subscription is opened once
29433
+ * and lives for hours, so folding it into a call count makes one long-lived
29434
+ * stream look like a storm.
29394
29435
  */
29395
29436
  var RequestCensusGroupSchema = object({
29437
+ plane: TransportPlaneSchema,
29396
29438
  procedure: string(),
29397
29439
  userAgent: string(),
29398
29440
  ip: string(),
29399
29441
  principal: string(),
29400
29442
  calls: number(),
29443
+ subscriptions: number(),
29401
29444
  perMin: number()
29402
29445
  });
29403
29446
  /**
@@ -29410,6 +29453,14 @@ var RequestCensusGroupSchema = object({
29410
29453
  var RequestCensusProcedureSchema = object({
29411
29454
  procedure: string(),
29412
29455
  calls: number(),
29456
+ /**
29457
+ * The same total, split by transport. THIS is the row that answers the
29458
+ * question the census exists for: one look at `deviceManager.listAll` says
29459
+ * which plane carried the 4 960, without joining two log lines by eye.
29460
+ */
29461
+ planes: TransportPlaneCountsSchema,
29462
+ /** Subscription STARTS on this procedure. Never folded into `calls`. */
29463
+ subscriptions: number(),
29413
29464
  perMin: number()
29414
29465
  });
29415
29466
  /**
@@ -29437,14 +29488,45 @@ var RequestCensusStatusSchema = object({
29437
29488
  */
29438
29489
  procedureCalls: number(),
29439
29490
  /**
29491
+ * `procedureCalls` split by transport. The four keys sum to
29492
+ * `procedureCalls` by construction - {@link RequestCensusSnapshotSchema}'s
29493
+ * `planesExplainTotal` is that identity, checked rather than assumed.
29494
+ */
29495
+ planes: TransportPlaneCountsSchema,
29496
+ /**
29497
+ * True iff `planes` sums to `procedureCalls`. False means a call was counted
29498
+ * on no plane at all - which is a RESULT (a plane is missing from the
29499
+ * instrument), not a failure, and it has to be visible to be read as one.
29500
+ */
29501
+ planesExplainTotal: boolean(),
29502
+ /**
29440
29503
  * tRPC WebSocket connections opened during the window. NOT calls - the WS
29441
- * transport resolves one context per connection - but the number that says
29442
- * whether a plane this census cannot see was busy while HTTP was quiet.
29504
+ * adapter resolves one context per connection - kept because a plane's call
29505
+ * count of zero against 37 open connections says something different from a
29506
+ * plane with no connections at all.
29443
29507
  */
29444
29508
  wsConnections: number(),
29509
+ /**
29510
+ * Client frames the WS plane looked at. `wsMessages` far above
29511
+ * `planes.ws + subscriptions` means most traffic is not operations
29512
+ * (keepalives, connection params) - which is itself an answer.
29513
+ */
29514
+ wsMessages: number(),
29515
+ /**
29516
+ * Subscription STARTS across every plane, excluded from `procedureCalls` on
29517
+ * purpose: one live-events stream opened at boot and held for six hours is
29518
+ * one subscription, and counting it as a call would let a quiet plane
29519
+ * masquerade as the storm.
29520
+ */
29521
+ subscriptions: number(),
29522
+ /** `subscription.stop` frames. Starts minus stops is what is still open. */
29523
+ subscriptionStops: number(),
29445
29524
  distinctGroups: number(),
29446
- /** Calls counted in the totals whose group attribution was shed at the
29447
- * cardinality bound. */
29525
+ /**
29526
+ * Operations counted in the totals whose CALLER attribution was shed at the
29527
+ * cardinality bound. Unrelated to the `unknown` PLANE: these calls know
29528
+ * which transport they arrived on, they just lost their group row.
29529
+ */
29448
29530
  unattributedCalls: number(),
29449
29531
  procedures: array(RequestCensusProcedureSchema).readonly(),
29450
29532
  groups: array(RequestCensusGroupSchema).readonly()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-rademacher",
3
- "version": "0.2.31",
3
+ "version": "0.2.32",
4
4
  "description": "Rademacher HomePilot device-provider addon for CamStack — wraps the @apocaliss92/noderademacher local-hub client (roller shutters over the cover cap)",
5
5
  "keywords": [
6
6
  "camstack",