@cadenza.io/service 1.21.2 → 1.21.4

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/index.js CHANGED
@@ -1583,9 +1583,9 @@ var SocketController = class _SocketController {
1583
1583
  console.log("SocketServer: Setting up", ctx);
1584
1584
  let server;
1585
1585
  server = new import_socket.Server(ctx.__httpsServer ?? ctx.__httpServer);
1586
- console.log("SocketServer:", server);
1587
1586
  const profile = ctx.__securityProfile ?? "medium";
1588
1587
  server.use((socket, next) => {
1588
+ console.log("Middleware running for socket:", socket.id);
1589
1589
  const origin = socket?.handshake?.headers?.origin;
1590
1590
  const allowedOrigins = ["*"];
1591
1591
  const networkType = ctx.__networkType ?? "internal";
@@ -1600,8 +1600,9 @@ var SocketController = class _SocketController {
1600
1600
  high: { points: 1e3, duration: 60, blockDuration: 300 }
1601
1601
  };
1602
1602
  const limiter = new import_rate_limiter_flexible2.RateLimiterMemory(limiterOptions[profile]);
1603
- socket.use((packet, next2) => {
1604
- limiter.consume(socket?.handshake?.address || "unknown").then(() => next2()).catch((rej) => {
1603
+ const clientKey = socket.handshake.address || "unknown";
1604
+ socket.use((packet, packetNext) => {
1605
+ limiter.consume(clientKey).then(() => next()).catch((rej) => {
1605
1606
  if (rej.msBeforeNext > 0) {
1606
1607
  console.log(
1607
1608
  "SocketServer: Rate limit exceeded",
@@ -1611,9 +1612,11 @@ var SocketController = class _SocketController {
1611
1612
  message: "Rate limit exceeded",
1612
1613
  retryAfter: rej.msBeforeNext / 1e3
1613
1614
  });
1615
+ packetNext(new Error("Rate limit exceeded"));
1614
1616
  } else {
1615
1617
  console.log("SocketServer: Rate limit exceeded, blocked");
1616
1618
  socket.disconnect(true);
1619
+ packetNext(new Error("Blocked"));
1617
1620
  }
1618
1621
  });
1619
1622
  });
@@ -1625,7 +1628,7 @@ var SocketController = class _SocketController {
1625
1628
  return { ...ctx, __error: "No server", errored: true };
1626
1629
  }
1627
1630
  server.on("connection", (ws) => {
1628
- console.log("SocketServer: New connection");
1631
+ console.log("SocketServer: New connection", ws.name);
1629
1632
  try {
1630
1633
  ws.emit("handshake", {
1631
1634
  serviceInstanceId: CadenzaService.serviceRegistry.serviceInstanceId,
@@ -1633,7 +1636,7 @@ var SocketController = class _SocketController {
1633
1636
  __status: "success"
1634
1637
  });
1635
1638
  ws.on("handshake", (ctx2) => {
1636
- console.log("Socket HANDSHAKE", ctx2.serviceInstanceId);
1639
+ console.log("Socket HANDSHAKE", ctx2);
1637
1640
  if (ctx2.isFrontend) {
1638
1641
  const fetchId = `browser:${ctx2.serviceInstanceId}`;
1639
1642
  CadenzaService.createMetaTask(
@@ -1765,10 +1768,11 @@ var SocketController = class _SocketController {
1765
1768
  reconnectionDelay: 1e3,
1766
1769
  reconnectionDelayMax: 1e4,
1767
1770
  randomizationFactor: 0.5,
1768
- retries: 5
1771
+ retries: 5,
1772
+ transports: ["websocket"]
1769
1773
  });
1770
1774
  socket.on("connect", () => {
1771
- console.log("SocketClient: CONNECTED");
1775
+ console.log("SocketClient: CONNECTED", socket.id, socket.io);
1772
1776
  CadenzaService.broker.emit("meta.socket_client.connected", ctx);
1773
1777
  });
1774
1778
  socket.on("handshake", (ctx2) => {
@@ -1799,6 +1803,9 @@ var SocketController = class _SocketController {
1799
1803
  console.error("SocketClient: connect_error", err);
1800
1804
  CadenzaService.broker.emit("meta.socket_client.connect_error", err);
1801
1805
  });
1806
+ socket.on("timeout", (event) => {
1807
+ console.error(event, "timed out \u2014 server didn\u2019t respond");
1808
+ });
1802
1809
  socket.on("error", (err) => {
1803
1810
  console.error("SocketClient: error", err);
1804
1811
  CadenzaService.broker.emit("meta.socket_client.error", err);
@@ -1819,7 +1826,7 @@ var SocketController = class _SocketController {
1819
1826
  }
1820
1827
  return new Promise((resolve, reject) => {
1821
1828
  delete ctx2.__isSubMeta;
1822
- console.log("Socket Delegate:", ctx2);
1829
+ console.log("Socket Delegate:", socket.connected, ctx2);
1823
1830
  socket.timeout(1e4).emit(
1824
1831
  "delegation",
1825
1832
  ctx2,
@@ -4031,11 +4038,22 @@ var CadenzaService = class {
4031
4038
  });
4032
4039
  import_core3.default.createEphemeralMetaTask("Set database connection", () => {
4033
4040
  console.log("Database service created");
4034
- this.createCadenzaService(name, description, options);
4035
- }).doOn("meta.database.setup_done");
4036
- if (options.cadenzaDB?.connect) {
4037
- import_core3.default.createEphemeralMetaTask("Insert database service", (_, emit) => {
4038
- emit("meta.created_database_service", {
4041
+ if (options.cadenzaDB?.connect) {
4042
+ import_core3.default.createEphemeralMetaTask(
4043
+ "Insert database service",
4044
+ (_, emit) => {
4045
+ emit("meta.created_database_service", {
4046
+ data: {
4047
+ service_name: name,
4048
+ description,
4049
+ schema,
4050
+ is_meta: options.isMeta
4051
+ }
4052
+ });
4053
+ }
4054
+ ).doOn("meta.service_registry.service_inserted");
4055
+ } else {
4056
+ import_core3.default.broker.emit("meta.created_database_service", {
4039
4057
  data: {
4040
4058
  service_name: name,
4041
4059
  description,
@@ -4043,17 +4061,9 @@ var CadenzaService = class {
4043
4061
  is_meta: options.isMeta
4044
4062
  }
4045
4063
  });
4046
- }).doOn("meta.service_registry.service_inserted");
4047
- } else {
4048
- import_core3.default.broker.emit("meta.created_database_service", {
4049
- data: {
4050
- service_name: name,
4051
- description,
4052
- schema,
4053
- is_meta: options.isMeta
4054
- }
4055
- });
4056
- }
4064
+ }
4065
+ this.createCadenzaService(name, description, options);
4066
+ }).doOn("meta.database.setup_done");
4057
4067
  }
4058
4068
  static createMetaDatabaseService(name, schema, description = "", options = {}) {
4059
4069
  this.bootstrap();