@naylence/runtime 0.3.5-test.946 → 0.3.5-test.948

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.
@@ -98,12 +98,12 @@ installProcessEnvShim();
98
98
  // --- END ENV SHIM ---
99
99
 
100
100
  // This file is auto-generated during build - do not edit manually
101
- // Generated from package.json version: 0.3.5-test.946
101
+ // Generated from package.json version: 0.3.5-test.948
102
102
  /**
103
103
  * The package version, injected at build time.
104
104
  * @internal
105
105
  */
106
- const VERSION = '0.3.5-test.946';
106
+ const VERSION = '0.3.5-test.948';
107
107
 
108
108
  /**
109
109
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -10862,6 +10862,12 @@ class UpstreamSessionManager extends TaskSpawner {
10862
10862
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
10863
10863
  }
10864
10864
  await this.onWelcome(welcome.frame);
10865
+ // Inject node ID into grant for transport frame multiplexing
10866
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
10867
+ grant.localNodeId = welcome.frame.systemId;
10868
+ if (welcome.frame.targetSystemId) {
10869
+ grant.remoteNodeId = welcome.frame.targetSystemId;
10870
+ }
10865
10871
  const connector = await ConnectorFactory.createConnector(grant, {
10866
10872
  systemId: welcome.frame.systemId,
10867
10873
  });
@@ -30271,26 +30277,17 @@ class BroadcastChannelListener extends TransportListener {
30271
30277
  // Automatically configure transport frame multiplexing:
30272
30278
  // Use node IDs (not connector IDs) for node-to-node targeting
30273
30279
  const broadcastConfig = connectorConfig;
30274
- if (!broadcastConfig.localNodeId) {
30275
- broadcastConfig.localNodeId = routingNode.id;
30276
- }
30277
- if (!broadcastConfig.remoteNodeId) {
30278
- broadcastConfig.remoteNodeId = systemId;
30279
- logger$o.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
30280
- sender_id: params.senderId,
30281
- system_id: systemId,
30282
- remote_node_id: systemId,
30283
- local_node_id: broadcastConfig.localNodeId,
30284
- });
30285
- }
30286
- else {
30287
- logger$o.debug('broadcast_channel_listener_using_provided_remote_node_id', {
30288
- sender_id: params.senderId,
30289
- system_id: systemId,
30290
- remote_node_id: broadcastConfig.remoteNodeId,
30291
- local_node_id: broadcastConfig.localNodeId,
30292
- });
30293
- }
30280
+ // Always force localNodeId to be this listener's node ID
30281
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
30282
+ broadcastConfig.localNodeId = routingNode.id;
30283
+ // Always force remoteNodeId to be the attaching child's system ID
30284
+ broadcastConfig.remoteNodeId = systemId;
30285
+ logger$o.debug('broadcast_channel_listener_configured_node_ids', {
30286
+ sender_id: params.senderId,
30287
+ system_id: systemId,
30288
+ local_node_id: broadcastConfig.localNodeId,
30289
+ remote_node_id: broadcastConfig.remoteNodeId,
30290
+ });
30294
30291
  try {
30295
30292
  const connector = await routingNode.createOriginConnector({
30296
30293
  originType,
@@ -96,12 +96,12 @@ installProcessEnvShim();
96
96
  // --- END ENV SHIM ---
97
97
 
98
98
  // This file is auto-generated during build - do not edit manually
99
- // Generated from package.json version: 0.3.5-test.946
99
+ // Generated from package.json version: 0.3.5-test.948
100
100
  /**
101
101
  * The package version, injected at build time.
102
102
  * @internal
103
103
  */
104
- const VERSION = '0.3.5-test.946';
104
+ const VERSION = '0.3.5-test.948';
105
105
 
106
106
  /**
107
107
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -10860,6 +10860,12 @@ class UpstreamSessionManager extends TaskSpawner {
10860
10860
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
10861
10861
  }
10862
10862
  await this.onWelcome(welcome.frame);
10863
+ // Inject node ID into grant for transport frame multiplexing
10864
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
10865
+ grant.localNodeId = welcome.frame.systemId;
10866
+ if (welcome.frame.targetSystemId) {
10867
+ grant.remoteNodeId = welcome.frame.targetSystemId;
10868
+ }
10863
10869
  const connector = await ConnectorFactory.createConnector(grant, {
10864
10870
  systemId: welcome.frame.systemId,
10865
10871
  });
@@ -30269,26 +30275,17 @@ class BroadcastChannelListener extends TransportListener {
30269
30275
  // Automatically configure transport frame multiplexing:
30270
30276
  // Use node IDs (not connector IDs) for node-to-node targeting
30271
30277
  const broadcastConfig = connectorConfig;
30272
- if (!broadcastConfig.localNodeId) {
30273
- broadcastConfig.localNodeId = routingNode.id;
30274
- }
30275
- if (!broadcastConfig.remoteNodeId) {
30276
- broadcastConfig.remoteNodeId = systemId;
30277
- logger$o.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
30278
- sender_id: params.senderId,
30279
- system_id: systemId,
30280
- remote_node_id: systemId,
30281
- local_node_id: broadcastConfig.localNodeId,
30282
- });
30283
- }
30284
- else {
30285
- logger$o.debug('broadcast_channel_listener_using_provided_remote_node_id', {
30286
- sender_id: params.senderId,
30287
- system_id: systemId,
30288
- remote_node_id: broadcastConfig.remoteNodeId,
30289
- local_node_id: broadcastConfig.localNodeId,
30290
- });
30291
- }
30278
+ // Always force localNodeId to be this listener's node ID
30279
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
30280
+ broadcastConfig.localNodeId = routingNode.id;
30281
+ // Always force remoteNodeId to be the attaching child's system ID
30282
+ broadcastConfig.remoteNodeId = systemId;
30283
+ logger$o.debug('broadcast_channel_listener_configured_node_ids', {
30284
+ sender_id: params.senderId,
30285
+ system_id: systemId,
30286
+ local_node_id: broadcastConfig.localNodeId,
30287
+ remote_node_id: broadcastConfig.remoteNodeId,
30288
+ });
30292
30289
  try {
30293
30290
  const connector = await routingNode.createOriginConnector({
30294
30291
  originType,
@@ -352,26 +352,17 @@ class BroadcastChannelListener extends transport_listener_js_1.TransportListener
352
352
  // Automatically configure transport frame multiplexing:
353
353
  // Use node IDs (not connector IDs) for node-to-node targeting
354
354
  const broadcastConfig = connectorConfig;
355
- if (!broadcastConfig.localNodeId) {
356
- broadcastConfig.localNodeId = routingNode.id;
357
- }
358
- if (!broadcastConfig.remoteNodeId) {
359
- broadcastConfig.remoteNodeId = systemId;
360
- logger.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
361
- sender_id: params.senderId,
362
- system_id: systemId,
363
- remote_node_id: systemId,
364
- local_node_id: broadcastConfig.localNodeId,
365
- });
366
- }
367
- else {
368
- logger.debug('broadcast_channel_listener_using_provided_remote_node_id', {
369
- sender_id: params.senderId,
370
- system_id: systemId,
371
- remote_node_id: broadcastConfig.remoteNodeId,
372
- local_node_id: broadcastConfig.localNodeId,
373
- });
374
- }
355
+ // Always force localNodeId to be this listener's node ID
356
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
357
+ broadcastConfig.localNodeId = routingNode.id;
358
+ // Always force remoteNodeId to be the attaching child's system ID
359
+ broadcastConfig.remoteNodeId = systemId;
360
+ logger.debug('broadcast_channel_listener_configured_node_ids', {
361
+ sender_id: params.senderId,
362
+ system_id: systemId,
363
+ local_node_id: broadcastConfig.localNodeId,
364
+ remote_node_id: broadcastConfig.remoteNodeId,
365
+ });
375
366
  try {
376
367
  const connector = await routingNode.createOriginConnector({
377
368
  originType,
@@ -299,6 +299,12 @@ class UpstreamSessionManager extends task_spawner_js_1.TaskSpawner {
299
299
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
300
300
  }
301
301
  await this.onWelcome(welcome.frame);
302
+ // Inject node ID into grant for transport frame multiplexing
303
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
304
+ grant.localNodeId = welcome.frame.systemId;
305
+ if (welcome.frame.targetSystemId) {
306
+ grant.remoteNodeId = welcome.frame.targetSystemId;
307
+ }
302
308
  const connector = await connector_factory_js_1.ConnectorFactory.createConnector(grant, {
303
309
  systemId: welcome.frame.systemId,
304
310
  });
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  // This file is auto-generated during build - do not edit manually
3
- // Generated from package.json version: 0.3.5-test.946
3
+ // Generated from package.json version: 0.3.5-test.948
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.VERSION = void 0;
6
6
  /**
7
7
  * The package version, injected at build time.
8
8
  * @internal
9
9
  */
10
- exports.VERSION = '0.3.5-test.946';
10
+ exports.VERSION = '0.3.5-test.948';
@@ -348,26 +348,17 @@ export class BroadcastChannelListener extends TransportListener {
348
348
  // Automatically configure transport frame multiplexing:
349
349
  // Use node IDs (not connector IDs) for node-to-node targeting
350
350
  const broadcastConfig = connectorConfig;
351
- if (!broadcastConfig.localNodeId) {
352
- broadcastConfig.localNodeId = routingNode.id;
353
- }
354
- if (!broadcastConfig.remoteNodeId) {
355
- broadcastConfig.remoteNodeId = systemId;
356
- logger.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
357
- sender_id: params.senderId,
358
- system_id: systemId,
359
- remote_node_id: systemId,
360
- local_node_id: broadcastConfig.localNodeId,
361
- });
362
- }
363
- else {
364
- logger.debug('broadcast_channel_listener_using_provided_remote_node_id', {
365
- sender_id: params.senderId,
366
- system_id: systemId,
367
- remote_node_id: broadcastConfig.remoteNodeId,
368
- local_node_id: broadcastConfig.localNodeId,
369
- });
370
- }
351
+ // Always force localNodeId to be this listener's node ID
352
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
353
+ broadcastConfig.localNodeId = routingNode.id;
354
+ // Always force remoteNodeId to be the attaching child's system ID
355
+ broadcastConfig.remoteNodeId = systemId;
356
+ logger.debug('broadcast_channel_listener_configured_node_ids', {
357
+ sender_id: params.senderId,
358
+ system_id: systemId,
359
+ local_node_id: broadcastConfig.localNodeId,
360
+ remote_node_id: broadcastConfig.remoteNodeId,
361
+ });
371
362
  try {
372
363
  const connector = await routingNode.createOriginConnector({
373
364
  originType,
@@ -296,6 +296,12 @@ export class UpstreamSessionManager extends TaskSpawner {
296
296
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
297
297
  }
298
298
  await this.onWelcome(welcome.frame);
299
+ // Inject node ID into grant for transport frame multiplexing
300
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
301
+ grant.localNodeId = welcome.frame.systemId;
302
+ if (welcome.frame.targetSystemId) {
303
+ grant.remoteNodeId = welcome.frame.targetSystemId;
304
+ }
299
305
  const connector = await ConnectorFactory.createConnector(grant, {
300
306
  systemId: welcome.frame.systemId,
301
307
  });
@@ -1,7 +1,7 @@
1
1
  // This file is auto-generated during build - do not edit manually
2
- // Generated from package.json version: 0.3.5-test.946
2
+ // Generated from package.json version: 0.3.5-test.948
3
3
  /**
4
4
  * The package version, injected at build time.
5
5
  * @internal
6
6
  */
7
- export const VERSION = '0.3.5-test.946';
7
+ export const VERSION = '0.3.5-test.948';
@@ -14,12 +14,12 @@ var fastify = require('fastify');
14
14
  var websocketPlugin = require('@fastify/websocket');
15
15
 
16
16
  // This file is auto-generated during build - do not edit manually
17
- // Generated from package.json version: 0.3.5-test.946
17
+ // Generated from package.json version: 0.3.5-test.948
18
18
  /**
19
19
  * The package version, injected at build time.
20
20
  * @internal
21
21
  */
22
- const VERSION = '0.3.5-test.946';
22
+ const VERSION = '0.3.5-test.948';
23
23
 
24
24
  /**
25
25
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -10778,6 +10778,12 @@ class UpstreamSessionManager extends TaskSpawner {
10778
10778
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
10779
10779
  }
10780
10780
  await this.onWelcome(welcome.frame);
10781
+ // Inject node ID into grant for transport frame multiplexing
10782
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
10783
+ grant.localNodeId = welcome.frame.systemId;
10784
+ if (welcome.frame.targetSystemId) {
10785
+ grant.remoteNodeId = welcome.frame.targetSystemId;
10786
+ }
10781
10787
  const connector = await ConnectorFactory.createConnector(grant, {
10782
10788
  systemId: welcome.frame.systemId,
10783
10789
  });
@@ -36452,26 +36458,17 @@ class BroadcastChannelListener extends TransportListener {
36452
36458
  // Automatically configure transport frame multiplexing:
36453
36459
  // Use node IDs (not connector IDs) for node-to-node targeting
36454
36460
  const broadcastConfig = connectorConfig;
36455
- if (!broadcastConfig.localNodeId) {
36456
- broadcastConfig.localNodeId = routingNode.id;
36457
- }
36458
- if (!broadcastConfig.remoteNodeId) {
36459
- broadcastConfig.remoteNodeId = systemId;
36460
- logger$a.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
36461
- sender_id: params.senderId,
36462
- system_id: systemId,
36463
- remote_node_id: systemId,
36464
- local_node_id: broadcastConfig.localNodeId,
36465
- });
36466
- }
36467
- else {
36468
- logger$a.debug('broadcast_channel_listener_using_provided_remote_node_id', {
36469
- sender_id: params.senderId,
36470
- system_id: systemId,
36471
- remote_node_id: broadcastConfig.remoteNodeId,
36472
- local_node_id: broadcastConfig.localNodeId,
36473
- });
36474
- }
36461
+ // Always force localNodeId to be this listener's node ID
36462
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
36463
+ broadcastConfig.localNodeId = routingNode.id;
36464
+ // Always force remoteNodeId to be the attaching child's system ID
36465
+ broadcastConfig.remoteNodeId = systemId;
36466
+ logger$a.debug('broadcast_channel_listener_configured_node_ids', {
36467
+ sender_id: params.senderId,
36468
+ system_id: systemId,
36469
+ local_node_id: broadcastConfig.localNodeId,
36470
+ remote_node_id: broadcastConfig.remoteNodeId,
36471
+ });
36475
36472
  try {
36476
36473
  const connector = await routingNode.createOriginConnector({
36477
36474
  originType,
@@ -13,12 +13,12 @@ import fastify from 'fastify';
13
13
  import websocketPlugin from '@fastify/websocket';
14
14
 
15
15
  // This file is auto-generated during build - do not edit manually
16
- // Generated from package.json version: 0.3.5-test.946
16
+ // Generated from package.json version: 0.3.5-test.948
17
17
  /**
18
18
  * The package version, injected at build time.
19
19
  * @internal
20
20
  */
21
- const VERSION = '0.3.5-test.946';
21
+ const VERSION = '0.3.5-test.948';
22
22
 
23
23
  /**
24
24
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -10777,6 +10777,12 @@ class UpstreamSessionManager extends TaskSpawner {
10777
10777
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
10778
10778
  }
10779
10779
  await this.onWelcome(welcome.frame);
10780
+ // Inject node ID into grant for transport frame multiplexing
10781
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
10782
+ grant.localNodeId = welcome.frame.systemId;
10783
+ if (welcome.frame.targetSystemId) {
10784
+ grant.remoteNodeId = welcome.frame.targetSystemId;
10785
+ }
10780
10786
  const connector = await ConnectorFactory.createConnector(grant, {
10781
10787
  systemId: welcome.frame.systemId,
10782
10788
  });
@@ -36451,26 +36457,17 @@ class BroadcastChannelListener extends TransportListener {
36451
36457
  // Automatically configure transport frame multiplexing:
36452
36458
  // Use node IDs (not connector IDs) for node-to-node targeting
36453
36459
  const broadcastConfig = connectorConfig;
36454
- if (!broadcastConfig.localNodeId) {
36455
- broadcastConfig.localNodeId = routingNode.id;
36456
- }
36457
- if (!broadcastConfig.remoteNodeId) {
36458
- broadcastConfig.remoteNodeId = systemId;
36459
- logger$a.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
36460
- sender_id: params.senderId,
36461
- system_id: systemId,
36462
- remote_node_id: systemId,
36463
- local_node_id: broadcastConfig.localNodeId,
36464
- });
36465
- }
36466
- else {
36467
- logger$a.debug('broadcast_channel_listener_using_provided_remote_node_id', {
36468
- sender_id: params.senderId,
36469
- system_id: systemId,
36470
- remote_node_id: broadcastConfig.remoteNodeId,
36471
- local_node_id: broadcastConfig.localNodeId,
36472
- });
36473
- }
36460
+ // Always force localNodeId to be this listener's node ID
36461
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
36462
+ broadcastConfig.localNodeId = routingNode.id;
36463
+ // Always force remoteNodeId to be the attaching child's system ID
36464
+ broadcastConfig.remoteNodeId = systemId;
36465
+ logger$a.debug('broadcast_channel_listener_configured_node_ids', {
36466
+ sender_id: params.senderId,
36467
+ system_id: systemId,
36468
+ local_node_id: broadcastConfig.localNodeId,
36469
+ remote_node_id: broadcastConfig.remoteNodeId,
36470
+ });
36474
36471
  try {
36475
36472
  const connector = await routingNode.createOriginConnector({
36476
36473
  originType,
@@ -5478,12 +5478,12 @@ for (const [name, config] of Object.entries(SQLITE_PROFILES)) {
5478
5478
  }
5479
5479
 
5480
5480
  // This file is auto-generated during build - do not edit manually
5481
- // Generated from package.json version: 0.3.5-test.946
5481
+ // Generated from package.json version: 0.3.5-test.948
5482
5482
  /**
5483
5483
  * The package version, injected at build time.
5484
5484
  * @internal
5485
5485
  */
5486
- const VERSION = '0.3.5-test.946';
5486
+ const VERSION = '0.3.5-test.948';
5487
5487
 
5488
5488
  /**
5489
5489
  * Fame errors module - Fame protocol specific error classes
@@ -12486,6 +12486,12 @@ class UpstreamSessionManager extends TaskSpawner {
12486
12486
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
12487
12487
  }
12488
12488
  await this.onWelcome(welcome.frame);
12489
+ // Inject node ID into grant for transport frame multiplexing
12490
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
12491
+ grant.localNodeId = welcome.frame.systemId;
12492
+ if (welcome.frame.targetSystemId) {
12493
+ grant.remoteNodeId = welcome.frame.targetSystemId;
12494
+ }
12489
12495
  const connector = await ConnectorFactory.createConnector(grant, {
12490
12496
  systemId: welcome.frame.systemId,
12491
12497
  });
@@ -33028,26 +33034,17 @@ class BroadcastChannelListener extends TransportListener {
33028
33034
  // Automatically configure transport frame multiplexing:
33029
33035
  // Use node IDs (not connector IDs) for node-to-node targeting
33030
33036
  const broadcastConfig = connectorConfig;
33031
- if (!broadcastConfig.localNodeId) {
33032
- broadcastConfig.localNodeId = routingNode.id;
33033
- }
33034
- if (!broadcastConfig.remoteNodeId) {
33035
- broadcastConfig.remoteNodeId = systemId;
33036
- logger$n.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
33037
- sender_id: params.senderId,
33038
- system_id: systemId,
33039
- remote_node_id: systemId,
33040
- local_node_id: broadcastConfig.localNodeId,
33041
- });
33042
- }
33043
- else {
33044
- logger$n.debug('broadcast_channel_listener_using_provided_remote_node_id', {
33045
- sender_id: params.senderId,
33046
- system_id: systemId,
33047
- remote_node_id: broadcastConfig.remoteNodeId,
33048
- local_node_id: broadcastConfig.localNodeId,
33049
- });
33050
- }
33037
+ // Always force localNodeId to be this listener's node ID
33038
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
33039
+ broadcastConfig.localNodeId = routingNode.id;
33040
+ // Always force remoteNodeId to be the attaching child's system ID
33041
+ broadcastConfig.remoteNodeId = systemId;
33042
+ logger$n.debug('broadcast_channel_listener_configured_node_ids', {
33043
+ sender_id: params.senderId,
33044
+ system_id: systemId,
33045
+ local_node_id: broadcastConfig.localNodeId,
33046
+ remote_node_id: broadcastConfig.remoteNodeId,
33047
+ });
33051
33048
  try {
33052
33049
  const connector = await routingNode.createOriginConnector({
33053
33050
  originType,
@@ -5477,12 +5477,12 @@ for (const [name, config] of Object.entries(SQLITE_PROFILES)) {
5477
5477
  }
5478
5478
 
5479
5479
  // This file is auto-generated during build - do not edit manually
5480
- // Generated from package.json version: 0.3.5-test.946
5480
+ // Generated from package.json version: 0.3.5-test.948
5481
5481
  /**
5482
5482
  * The package version, injected at build time.
5483
5483
  * @internal
5484
5484
  */
5485
- const VERSION = '0.3.5-test.946';
5485
+ const VERSION = '0.3.5-test.948';
5486
5486
 
5487
5487
  /**
5488
5488
  * Fame errors module - Fame protocol specific error classes
@@ -12485,6 +12485,12 @@ class UpstreamSessionManager extends TaskSpawner {
12485
12485
  cryptoProvider.prepareForAttach(welcome.frame.systemId, welcome.frame.assignedPath, welcome.frame.acceptedLogicals ?? []);
12486
12486
  }
12487
12487
  await this.onWelcome(welcome.frame);
12488
+ // Inject node ID into grant for transport frame multiplexing
12489
+ // This ensures localNodeId matches the node's systemId for proper frame filtering
12490
+ grant.localNodeId = welcome.frame.systemId;
12491
+ if (welcome.frame.targetSystemId) {
12492
+ grant.remoteNodeId = welcome.frame.targetSystemId;
12493
+ }
12488
12494
  const connector = await ConnectorFactory.createConnector(grant, {
12489
12495
  systemId: welcome.frame.systemId,
12490
12496
  });
@@ -33027,26 +33033,17 @@ class BroadcastChannelListener extends TransportListener {
33027
33033
  // Automatically configure transport frame multiplexing:
33028
33034
  // Use node IDs (not connector IDs) for node-to-node targeting
33029
33035
  const broadcastConfig = connectorConfig;
33030
- if (!broadcastConfig.localNodeId) {
33031
- broadcastConfig.localNodeId = routingNode.id;
33032
- }
33033
- if (!broadcastConfig.remoteNodeId) {
33034
- broadcastConfig.remoteNodeId = systemId;
33035
- logger$n.debug('broadcast_channel_listener_auto_configured_remote_node_id', {
33036
- sender_id: params.senderId,
33037
- system_id: systemId,
33038
- remote_node_id: systemId,
33039
- local_node_id: broadcastConfig.localNodeId,
33040
- });
33041
- }
33042
- else {
33043
- logger$n.debug('broadcast_channel_listener_using_provided_remote_node_id', {
33044
- sender_id: params.senderId,
33045
- system_id: systemId,
33046
- remote_node_id: broadcastConfig.remoteNodeId,
33047
- local_node_id: broadcastConfig.localNodeId,
33048
- });
33049
- }
33036
+ // Always force localNodeId to be this listener's node ID
33037
+ // This ensures the sentinel sets localNodeId=sentinel, not the child's ID
33038
+ broadcastConfig.localNodeId = routingNode.id;
33039
+ // Always force remoteNodeId to be the attaching child's system ID
33040
+ broadcastConfig.remoteNodeId = systemId;
33041
+ logger$n.debug('broadcast_channel_listener_configured_node_ids', {
33042
+ sender_id: params.senderId,
33043
+ system_id: systemId,
33044
+ local_node_id: broadcastConfig.localNodeId,
33045
+ remote_node_id: broadcastConfig.remoteNodeId,
33046
+ });
33050
33047
  try {
33051
33048
  const connector = await routingNode.createOriginConnector({
33052
33049
  originType,
@@ -2,4 +2,4 @@
2
2
  * The package version, injected at build time.
3
3
  * @internal
4
4
  */
5
- export declare const VERSION = "0.3.5-test.946";
5
+ export declare const VERSION = "0.3.5-test.948";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@naylence/runtime",
3
- "version": "0.3.5-test.946",
3
+ "version": "0.3.5-test.948",
4
4
  "type": "module",
5
5
  "description": "Naylence Runtime - Complete TypeScript runtime",
6
6
  "author": "Naylence Dev <naylencedev@gmail.com>",