@xyo-network/chain-orchestration 1.19.8 → 1.19.10

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.
@@ -1,166 +1,40 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
 
4
- // src/actor/BalanceActor.ts
5
- import { assertEx } from "@xylabs/sdk-js";
6
- import { Actor } from "@xyo-network/xl1-sdk";
7
- import { Mutex } from "async-mutex";
8
- var BalanceActor = class extends Actor {
9
- static {
10
- __name(this, "BalanceActor");
11
- }
12
- _updateMutex = new Mutex();
13
- get accountBalanceViewer() {
14
- return assertEx(this.params.accountBalanceViewer, () => "balanceService not set");
15
- }
16
- get blockViewer() {
17
- return assertEx(this.params.blockViewer, () => "blockViewer not set");
18
- }
19
- async startHandler() {
20
- await super.startHandler();
21
- this.registerTimer(
22
- "BalanceTimer",
23
- async () => {
24
- await this.updateBalance();
25
- },
26
- 1e3,
27
- 1e4
28
- /* 1000 */
29
- );
30
- }
31
- async updateBalance() {
32
- if (this._updateMutex.isLocked()) return;
33
- await this._updateMutex.runExclusive(async () => {
34
- const head = await this.blockViewer.currentBlockHash();
35
- await this.accountBalanceViewer.accountBalances([], {
36
- head
37
- });
38
- });
39
- }
40
- };
41
-
42
- // src/actor/MempoolActor.ts
43
- import { assertEx as assertEx2, creatable } from "@xylabs/sdk-js";
44
- import { Actor as Actor2 } from "@xyo-network/xl1-sdk";
45
- import { Mutex as Mutex2 } from "async-mutex";
46
- function _ts_decorate(decorators, target, key, desc) {
47
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
48
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
49
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
50
- return c > 3 && r && Object.defineProperty(target, key, r), r;
51
- }
52
- __name(_ts_decorate, "_ts_decorate");
53
- var MempoolActor = class extends Actor2 {
54
- static {
55
- __name(this, "MempoolActor");
56
- }
57
- _blockTimerId = null;
58
- _blockTimerMutex = new Mutex2();
59
- _transactionTimerId = null;
60
- _transactionTimerMutex = new Mutex2();
61
- get mempoolRunner() {
62
- return this.params.mempoolRunner;
63
- }
64
- get pendingBlocksArchivist() {
65
- return this.params.pendingBlocksArchivist;
66
- }
67
- get pendingTransactionsArchivist() {
68
- return this.params.pendingTransactionsArchivist;
69
- }
70
- static async paramsHandler(params) {
71
- return {
72
- ...await super.paramsHandler(params),
73
- mempoolRunner: assertEx2(params?.mempoolRunner, () => "mempoolRunner is required for MempoolActor"),
74
- pendingBlocksArchivist: assertEx2(params?.pendingBlocksArchivist, () => "pendingBlocksArchivist is required for MempoolActor"),
75
- pendingTransactionsArchivist: assertEx2(params?.pendingTransactionsArchivist, () => "pendingTransactionsArchivist is required for MempoolActor")
76
- };
77
- }
78
- async startHandler() {
79
- await super.startHandler();
80
- this.restartBlockTimer();
81
- }
82
- async stopHandler() {
83
- await super.stopHandler();
84
- this.stopBlockTimer();
85
- }
86
- restartBlockTimer() {
87
- this.stopBlockTimer();
88
- this._blockTimerId = setInterval(() => {
89
- if (this._blockTimerMutex.isLocked()) {
90
- return;
91
- }
92
- void this._blockTimerMutex.runExclusive(async () => {
93
- await this.mempoolRunner.prunePendingBlocks({
94
- batchSize: 50
95
- });
96
- });
97
- }, 1e3);
98
- }
99
- restartTransactionTimer() {
100
- this.stopTransactionTimer();
101
- this._transactionTimerId = setInterval(() => {
102
- if (this._transactionTimerMutex.isLocked()) {
103
- return;
104
- }
105
- void this._transactionTimerMutex.runExclusive(async () => {
106
- await this.mempoolRunner.prunePendingTransactions({
107
- batchSize: 50
108
- });
109
- });
110
- }, 1e3);
111
- }
112
- stopBlockTimer() {
113
- if (this._blockTimerId !== null) {
114
- clearInterval(this._blockTimerId);
115
- }
116
- this._blockTimerId = null;
117
- }
118
- stopTransactionTimer() {
119
- if (this._transactionTimerId !== null) {
120
- clearInterval(this._transactionTimerId);
121
- }
122
- this._transactionTimerId = null;
123
- }
124
- };
125
- MempoolActor = _ts_decorate([
126
- creatable()
127
- ], MempoolActor);
128
-
129
4
  // src/actor/ValidatorActor.ts
130
- import { assertEx as assertEx3, creatable as creatable2 } from "@xylabs/sdk-js";
5
+ import { creatable } from "@xylabs/sdk-js";
131
6
  import { processPendingBlocks } from "@xyo-network/chain-sdk";
132
- import { PayloadBuilder } from "@xyo-network/payload-builder";
133
- import { Actor as Actor3 } from "@xyo-network/xl1-sdk";
134
- function _ts_decorate2(decorators, target, key, desc) {
7
+ import { ActorV3, BlockViewerMoniker, FinalizationRunnerMoniker, MempoolViewerMoniker } from "@xyo-network/xl1-sdk";
8
+ function _ts_decorate(decorators, target, key, desc) {
135
9
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
136
10
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
137
11
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
138
12
  return c > 3 && r && Object.defineProperty(target, key, r), r;
139
13
  }
140
- __name(_ts_decorate2, "_ts_decorate");
141
- var ValidatorActor = class extends Actor3 {
14
+ __name(_ts_decorate, "_ts_decorate");
15
+ var ValidatorActor = class extends ActorV3 {
142
16
  static {
143
17
  __name(this, "ValidatorActor");
144
18
  }
19
+ _blockViewer;
20
+ _finalizationRunner;
145
21
  _lastValidatedBlock;
146
22
  _lastValidatedBlockHash;
23
+ _mempoolViewer;
147
24
  get blockViewer() {
148
- return this.params.blockViewer;
25
+ return this._blockViewer;
149
26
  }
150
- get finalizedArchivist() {
151
- return assertEx3(this.params.finalizedArchivist, () => "finalizedArchivist not set");
27
+ get finalizationRunner() {
28
+ return this._finalizationRunner;
152
29
  }
153
30
  get mempoolViewer() {
154
- return this.params.mempoolViewer;
31
+ return this._mempoolViewer;
155
32
  }
156
- static async paramsHandler(params) {
157
- return {
158
- ...await super.paramsHandler(params),
159
- mempoolViewer: assertEx3(params?.mempoolViewer, () => "mempoolViewer is required for ValidatorActor"),
160
- blockViewer: assertEx3(params?.blockViewer, () => "blockViewer is required for ValidatorActor"),
161
- finalizedArchivist: assertEx3(params?.finalizedArchivist, () => "finalizedArchivist is required for ValidatorActor"),
162
- account: assertEx3(params?.account, () => "account is required for ValidatorActor")
163
- };
33
+ async createHandler() {
34
+ await super.startHandler();
35
+ this._blockViewer = await this.locator.getInstance(BlockViewerMoniker);
36
+ this._finalizationRunner = await this.locator.getInstance(FinalizationRunnerMoniker);
37
+ this._mempoolViewer = await this.locator.getInstance(MempoolViewerMoniker);
164
38
  }
165
39
  async startHandler() {
166
40
  await super.startHandler();
@@ -174,7 +48,7 @@ var ValidatorActor = class extends Actor3 {
174
48
  logger: this.logger,
175
49
  mempoolViewer: this.mempoolViewer,
176
50
  blockViewer: this.blockViewer,
177
- finalizedArchivist: this.finalizedArchivist
51
+ finalizationRunner: this.finalizationRunner
178
52
  });
179
53
  }, {
180
54
  ...this.context,
@@ -186,28 +60,18 @@ var ValidatorActor = class extends Actor3 {
186
60
  /* 500 */
187
61
  );
188
62
  }
189
- async slashInvalidBlock(_block) {
190
- const slashed = await Promise.resolve(true);
191
- return slashed;
192
- }
193
- async validateBlock(block) {
194
- const valid = await Promise.resolve(true);
195
- this._lastValidatedBlock = block;
196
- this._lastValidatedBlockHash = await PayloadBuilder.hash(block);
197
- return valid;
198
- }
199
63
  };
200
- ValidatorActor = _ts_decorate2([
201
- creatable2()
64
+ ValidatorActor = _ts_decorate([
65
+ creatable()
202
66
  ], ValidatorActor);
203
67
 
204
68
  // src/archivists/ChainFinalized/archivist.ts
205
69
  import { startupSpanAsync } from "@xyo-network/chain-utils";
206
70
  import { timeBudget } from "@xyo-network/xl1-sdk";
207
- import { Mutex as Mutex4 } from "async-mutex";
71
+ import { Mutex as Mutex2 } from "async-mutex";
208
72
 
209
73
  // src/archivists/ChainFinalized/local.ts
210
- import { Mutex as Mutex3 } from "async-mutex";
74
+ import { Mutex } from "async-mutex";
211
75
 
212
76
  // src/archivists/lib/localPersistentArchivist.ts
213
77
  import { rm } from "fs/promises";
@@ -235,7 +99,7 @@ var getLocalPersistentArchivist = /* @__PURE__ */ __name((name, dbName, storeNam
235
99
  }, "getLocalPersistentArchivist");
236
100
 
237
101
  // src/archivists/ChainFinalized/local.ts
238
- var mutex = new Mutex3();
102
+ var mutex = new Mutex();
239
103
  var singleton;
240
104
  var initLocalChainFinalizedArchivist = /* @__PURE__ */ __name(async ({ config }) => {
241
105
  return await mutex.runExclusive(async () => {
@@ -247,7 +111,7 @@ var initLocalChainFinalizedArchivist = /* @__PURE__ */ __name(async ({ config })
247
111
  }, "initLocalChainFinalizedArchivist");
248
112
 
249
113
  // src/archivists/ChainFinalized/archivist.ts
250
- var mutex2 = new Mutex4();
114
+ var mutex2 = new Mutex2();
251
115
  var singleton2;
252
116
  async function initChainFinalizedArchivist(context) {
253
117
  return await mutex2.runExclusive(async () => {
@@ -264,11 +128,11 @@ __name(initChainFinalizedArchivist, "initChainFinalizedArchivist");
264
128
  // src/archivists/PendingBlocks/archivist.ts
265
129
  import { startupSpanAsync as startupSpanAsync2 } from "@xyo-network/chain-utils";
266
130
  import { timeBudget as timeBudget2 } from "@xyo-network/xl1-sdk";
267
- import { Mutex as Mutex6 } from "async-mutex";
131
+ import { Mutex as Mutex4 } from "async-mutex";
268
132
 
269
133
  // src/archivists/PendingBlocks/local.ts
270
- import { Mutex as Mutex5 } from "async-mutex";
271
- var mutex3 = new Mutex5();
134
+ import { Mutex as Mutex3 } from "async-mutex";
135
+ var mutex3 = new Mutex3();
272
136
  var singleton3;
273
137
  var initLocalPendingBlocksArchivist = /* @__PURE__ */ __name(async ({ config }) => {
274
138
  return await mutex3.runExclusive(async () => {
@@ -280,7 +144,7 @@ var initLocalPendingBlocksArchivist = /* @__PURE__ */ __name(async ({ config })
280
144
  }, "initLocalPendingBlocksArchivist");
281
145
 
282
146
  // src/archivists/PendingBlocks/archivist.ts
283
- var mutex4 = new Mutex6();
147
+ var mutex4 = new Mutex4();
284
148
  var singleton4;
285
149
  async function initPendingBlocksArchivist(context) {
286
150
  return await mutex4.runExclusive(async () => {
@@ -297,12 +161,12 @@ __name(initPendingBlocksArchivist, "initPendingBlocksArchivist");
297
161
  // src/archivists/RejectedTransactions/archivist.ts
298
162
  import { startupSpanAsync as startupSpanAsync3 } from "@xyo-network/chain-utils";
299
163
  import { timeBudget as timeBudget3 } from "@xyo-network/xl1-sdk";
300
- import { Mutex as Mutex8 } from "async-mutex";
164
+ import { Mutex as Mutex6 } from "async-mutex";
301
165
 
302
166
  // src/archivists/RejectedTransactions/local.ts
303
167
  import { MemoryArchivist, MemoryArchivistConfigSchema } from "@xyo-network/archivist-memory";
304
- import { Mutex as Mutex7 } from "async-mutex";
305
- var mutex5 = new Mutex7();
168
+ import { Mutex as Mutex5 } from "async-mutex";
169
+ var mutex5 = new Mutex5();
306
170
  var singleton5;
307
171
  var initLocalRejectedTransactionsArchivist = /* @__PURE__ */ __name(async () => {
308
172
  return await mutex5.runExclusive(async () => {
@@ -320,7 +184,7 @@ var initLocalRejectedTransactionsArchivist = /* @__PURE__ */ __name(async () =>
320
184
  }, "initLocalRejectedTransactionsArchivist");
321
185
 
322
186
  // src/archivists/RejectedTransactions/archivist.ts
323
- var mutex6 = new Mutex8();
187
+ var mutex6 = new Mutex6();
324
188
  var singleton6;
325
189
  async function initRejectedTransactionsArchivist(params) {
326
190
  return await mutex6.runExclusive(async () => {
@@ -335,27 +199,27 @@ async function initRejectedTransactionsArchivist(params) {
335
199
  __name(initRejectedTransactionsArchivist, "initRejectedTransactionsArchivist");
336
200
 
337
201
  // src/archivists/StakeIntentState/archivist.ts
338
- import { assertEx as assertEx5 } from "@xylabs/sdk-js";
202
+ import { assertEx as assertEx2 } from "@xylabs/sdk-js";
339
203
  import { startupSpanAsync as startupSpanAsync4 } from "@xyo-network/chain-utils";
340
204
  import { timeBudget as timeBudget4 } from "@xyo-network/xl1-sdk";
341
- import { Mutex as Mutex10 } from "async-mutex";
205
+ import { Mutex as Mutex8 } from "async-mutex";
342
206
 
343
207
  // src/archivists/StakeIntentState/local.ts
344
- import { assertEx as assertEx4 } from "@xylabs/sdk-js";
345
- import { Mutex as Mutex9 } from "async-mutex";
346
- var mutex7 = new Mutex9();
208
+ import { assertEx } from "@xylabs/sdk-js";
209
+ import { Mutex as Mutex7 } from "async-mutex";
210
+ var mutex7 = new Mutex7();
347
211
  var singleton7;
348
212
  var initLocalStakeIntentStateArchivist = /* @__PURE__ */ __name(async ({ config }) => {
349
213
  return await mutex7.runExclusive(async () => {
350
214
  if (singleton7) return singleton7;
351
215
  const { root } = config.storage;
352
216
  singleton7 = await getLocalPersistentArchivist("local-stake-intent-state", "stakeIntent", "state", root);
353
- return assertEx4(singleton7, () => new Error("Failed to initialize stake intent state archivist"));
217
+ return assertEx(singleton7, () => new Error("Failed to initialize stake intent state archivist"));
354
218
  });
355
219
  }, "initLocalStakeIntentStateArchivist");
356
220
 
357
221
  // src/archivists/StakeIntentState/archivist.ts
358
- var mutex8 = new Mutex10();
222
+ var mutex8 = new Mutex8();
359
223
  var singleton8;
360
224
  var initStakeIntentStateArchivist = /* @__PURE__ */ __name(async (context) => {
361
225
  return await mutex8.runExclusive(async () => {
@@ -363,7 +227,7 @@ var initStakeIntentStateArchivist = /* @__PURE__ */ __name(async (context) => {
363
227
  return await timeBudget4("initStakeIntentStateArchivist", context.logger, async () => {
364
228
  const local = await startupSpanAsync4("StakeIntentStateArchivist:initLocal", () => initLocalStakeIntentStateArchivist(context));
365
229
  singleton8 = local;
366
- return assertEx5(singleton8, () => "StakeIntentStateArchivist is undefined");
230
+ return assertEx2(singleton8, () => "StakeIntentStateArchivist is undefined");
367
231
  }, 2e3, true);
368
232
  });
369
233
  }, "initStakeIntentStateArchivist");
@@ -401,12 +265,12 @@ async function createProducerChainStakeIntentBlock(prevBlock, producerAccount, r
401
265
  __name(createProducerChainStakeIntentBlock, "createProducerChainStakeIntentBlock");
402
266
 
403
267
  // src/evm/initChainId.ts
404
- import { assertEx as assertEx6, hexFrom, isDefined, isHex } from "@xylabs/sdk-js";
268
+ import { assertEx as assertEx3, hexFrom, isDefined, isHex } from "@xylabs/sdk-js";
405
269
  var canUseChainId = /* @__PURE__ */ __name((config) => {
406
270
  return isDefined(config.evm.chainId);
407
271
  }, "canUseChainId");
408
272
  var getChainId = /* @__PURE__ */ __name((config) => {
409
- const chainId = assertEx6(config.evm.chainId, () => "Missing config.evm.chainId");
273
+ const chainId = assertEx3(config.evm.chainId, () => "Missing config.evm.chainId");
410
274
  if (isHex(chainId, {
411
275
  prefix: true
412
276
  })) {
@@ -420,10 +284,10 @@ var getChainId = /* @__PURE__ */ __name((config) => {
420
284
  }, "getChainId");
421
285
 
422
286
  // src/evm/initEvmProvider.ts
423
- import { assertEx as assertEx9 } from "@xylabs/sdk-js";
287
+ import { assertEx as assertEx6 } from "@xylabs/sdk-js";
424
288
 
425
289
  // src/evm/initInfuraProvider.ts
426
- import { assertEx as assertEx7, isDefined as isDefined2 } from "@xylabs/sdk-js";
290
+ import { assertEx as assertEx4, isDefined as isDefined2 } from "@xylabs/sdk-js";
427
291
  import { InfuraProvider } from "ethers/providers";
428
292
  var instance;
429
293
  var initInfuraProvider = /* @__PURE__ */ __name((config) => {
@@ -436,8 +300,8 @@ var canUseInfuraProvider = /* @__PURE__ */ __name((config) => {
436
300
  return canUseChainId(config) && isDefined2(config.evm?.infura?.projectId) && isDefined2(config.evm?.infura?.projectSecret);
437
301
  }, "canUseInfuraProvider");
438
302
  var getInfuraProviderConfig = /* @__PURE__ */ __name((config) => {
439
- const projectId = assertEx7(config.evm?.infura?.projectId, () => "Missing config.evm.infura.projectId");
440
- const projectSecret = assertEx7(config.evm?.infura?.projectSecret, () => "Missing config.evm.infura.projectSecret");
303
+ const projectId = assertEx4(config.evm?.infura?.projectId, () => "Missing config.evm.infura.projectId");
304
+ const projectSecret = assertEx4(config.evm?.infura?.projectSecret, () => "Missing config.evm.infura.projectSecret");
441
305
  return [
442
306
  getChainId(config),
443
307
  projectId,
@@ -446,7 +310,7 @@ var getInfuraProviderConfig = /* @__PURE__ */ __name((config) => {
446
310
  }, "getInfuraProviderConfig");
447
311
 
448
312
  // src/evm/initJsonRpcProvider.ts
449
- import { assertEx as assertEx8, isDefined as isDefined3 } from "@xylabs/sdk-js";
313
+ import { assertEx as assertEx5, isDefined as isDefined3 } from "@xylabs/sdk-js";
450
314
  import { JsonRpcProvider } from "ethers/providers";
451
315
  var initJsonRpcProvider = /* @__PURE__ */ __name((config) => {
452
316
  const providerConfig = getJsonRpcProviderConfig(config);
@@ -456,7 +320,7 @@ var canUseJsonRpcProvider = /* @__PURE__ */ __name((config) => {
456
320
  return canUseChainId(config) && isDefined3(config.evm.jsonRpc?.url);
457
321
  }, "canUseJsonRpcProvider");
458
322
  var getJsonRpcProviderConfig = /* @__PURE__ */ __name((config) => {
459
- const jsonRpcUrl = assertEx8(config.evm.jsonRpc?.url, () => "Missing config.evm.jsonRpc.url");
323
+ const jsonRpcUrl = assertEx5(config.evm.jsonRpc?.url, () => "Missing config.evm.jsonRpc.url");
460
324
  return [
461
325
  jsonRpcUrl,
462
326
  getChainId(config)
@@ -472,7 +336,7 @@ var initEvmProvider = /* @__PURE__ */ __name(async ({ config }) => {
472
336
  } else if (canUseJsonRpcProvider(config)) {
473
337
  provider = initJsonRpcProvider(config);
474
338
  }
475
- return assertEx9(await provider, () => "No provider available");
339
+ return assertEx6(await provider, () => "No provider available");
476
340
  }, "initEvmProvider");
477
341
  var canUseEvmProvider = /* @__PURE__ */ __name(({ config }) => {
478
342
  return canUseInfuraProvider(config) || canUseJsonRpcProvider(config);
@@ -575,7 +439,7 @@ var ServiceLifetime = {
575
439
 
576
440
  // src/init/initBalanceSummaryMap.ts
577
441
  import { BaseMongoSdk } from "@xylabs/mongo";
578
- import { assertEx as assertEx10 } from "@xylabs/sdk-js";
442
+ import { assertEx as assertEx7 } from "@xylabs/sdk-js";
579
443
  import { MongoMap } from "@xyo-network/chain-protocol";
580
444
  import { hasMongoConfig, MemoryMap } from "@xyo-network/xl1-sdk";
581
445
  async function initBalanceSummaryMap({ config, logger }) {
@@ -600,7 +464,7 @@ async function initBalanceSummaryMap({ config, logger }) {
600
464
  maxEntries: 5e3
601
465
  }
602
466
  });
603
- assertEx10(await result.start(), () => "Failed to start transfer summary map");
467
+ assertEx7(await result.start(), () => "Failed to start transfer summary map");
604
468
  return result;
605
469
  } else {
606
470
  logger?.warn("[API] Mongo configuration not found. Using MemoryMap for BalanceSummaryMap.");
@@ -610,18 +474,18 @@ async function initBalanceSummaryMap({ config, logger }) {
610
474
  __name(initBalanceSummaryMap, "initBalanceSummaryMap");
611
475
 
612
476
  // src/init/initBridgedModule.ts
613
- import { assertEx as assertEx11 } from "@xylabs/sdk-js";
477
+ import { assertEx as assertEx8 } from "@xylabs/sdk-js";
614
478
  import { asAttachableArchivistInstance } from "@xyo-network/archivist-model";
615
479
  import { asAttachableModuleInstance } from "@xyo-network/module-model";
616
- import { Mutex as Mutex11 } from "async-mutex";
617
- var initMutex = new Mutex11();
480
+ import { Mutex as Mutex9 } from "async-mutex";
481
+ var initMutex = new Mutex9();
618
482
  var bridgedModuleDictionary = {};
619
483
  var initBridgedModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) => {
620
484
  return await initMutex.runExclusive(async () => {
621
485
  const existing = bridgedModuleDictionary?.[bridge.address]?.[moduleName];
622
486
  if (existing) return existing;
623
- const mod = assertEx11(await bridge.resolve(moduleName), () => `Could not resolve ${moduleName}`);
624
- const moduleInstance = assertEx11(asAttachableModuleInstance(mod), () => `Could not convert ${moduleName} to attachable module instance`);
487
+ const mod = assertEx8(await bridge.resolve(moduleName), () => `Could not resolve ${moduleName}`);
488
+ const moduleInstance = assertEx8(asAttachableModuleInstance(mod), () => `Could not convert ${moduleName} to attachable module instance`);
625
489
  let moduleMap = bridgedModuleDictionary[bridge.address];
626
490
  if (moduleMap === void 0) {
627
491
  moduleMap = {};
@@ -632,14 +496,14 @@ var initBridgedModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) =>
632
496
  });
633
497
  }, "initBridgedModule");
634
498
  var initBridgedArchivistModule = /* @__PURE__ */ __name(async ({ bridge, moduleName }) => {
635
- return assertEx11(asAttachableArchivistInstance(await initBridgedModule({
499
+ return assertEx8(asAttachableArchivistInstance(await initBridgedModule({
636
500
  bridge,
637
501
  moduleName
638
502
  })), () => `Could not convert ${moduleName} to attachable archivist instance`);
639
503
  }, "initBridgedArchivistModule");
640
504
 
641
505
  // src/init/initEvmProvidersIfAvailable.ts
642
- import { asEthAddress, assertEx as assertEx12 } from "@xylabs/sdk-js";
506
+ import { asEthAddress, assertEx as assertEx9 } from "@xylabs/sdk-js";
643
507
  import { EvmChainContractViewer, EvmStakeEventsViewer, EvmStakeTotalsViewer, EvmStakeViewer } from "@xyo-network/chain-ethereum";
644
508
  import { SimpleChainContractViewer, SimpleStakeEventsViewer, SimpleStakeTotalsViewer, SimpleStakeViewer, SimpleTimeSyncViewer, XYO_ZERO_ADDRESS } from "@xyo-network/xl1-sdk";
645
509
  async function initEvmProvidersIfAvailable(locator) {
@@ -647,7 +511,7 @@ async function initEvmProvidersIfAvailable(locator) {
647
511
  if (canUseEvmProvider({
648
512
  config
649
513
  })) {
650
- const chainId = assertEx12(config.chain.id, () => "Missing config.chain.chainId (required for EVM providers)");
514
+ const chainId = assertEx9(config.chain.id, () => "Missing config.chain.chainId (required for EVM providers)");
651
515
  const provider2 = await initEvmProvider({
652
516
  config,
653
517
  logger
@@ -675,7 +539,7 @@ async function initEvmProvidersIfAvailable(locator) {
675
539
  } else {
676
540
  logger?.warn("EVM provider not available - running with memory based contract/stake viewers");
677
541
  const positions = [];
678
- const chainId = assertEx12(config.chain.id, () => "Missing config.chain.chainId (required for non-EVM providers)");
542
+ const chainId = assertEx9(config.chain.id, () => "Missing config.chain.chainId (required for non-EVM providers)");
679
543
  locator.register(SimpleStakeEventsViewer.factory(SimpleStakeEventsViewer.dependencies, {
680
544
  positions
681
545
  }));
@@ -696,7 +560,7 @@ async function initEvmProvidersIfAvailable(locator) {
696
560
  __name(initEvmProvidersIfAvailable, "initEvmProvidersIfAvailable");
697
561
 
698
562
  // src/init/initFinalizationArchivistIfNeeded.ts
699
- import { assertEx as assertEx13 } from "@xylabs/sdk-js";
563
+ import { assertEx as assertEx10 } from "@xylabs/sdk-js";
700
564
  import { Account } from "@xyo-network/account";
701
565
  import { createBootstrapHead } from "@xyo-network/chain-sdk";
702
566
  import { asAttoXL1, findMostRecentBlock, flattenHydratedBlock } from "@xyo-network/xl1-sdk";
@@ -713,8 +577,8 @@ async function initFinalizationArchivistIfNeeded(archivist, config, account) {
713
577
  const payloads = chain.flatMap((block) => flattenHydratedBlock(block));
714
578
  await archivist.insert(payloads);
715
579
  }
716
- const head = possibleHead ?? assertEx13(await findMostRecentBlock(archivist), () => "No blocks found in chain archivist");
717
- const chainId = assertEx13(possibleChainId, () => "Chain ID could not be determined");
580
+ const head = possibleHead ?? assertEx10(await findMostRecentBlock(archivist), () => "No blocks found in chain archivist");
581
+ const chainId = assertEx10(possibleChainId, () => "Chain ID could not be determined");
718
582
  return [
719
583
  head,
720
584
  chainId
@@ -765,7 +629,7 @@ ${randomMnemonic}
765
629
  }, "initProducerAccount");
766
630
 
767
631
  // src/init/initSeedPhrase.ts
768
- import { assertEx as assertEx14, isString } from "@xylabs/sdk-js";
632
+ import { assertEx as assertEx11, isString } from "@xylabs/sdk-js";
769
633
  import { HDWallet as HDWallet2 } from "@xyo-network/wallet";
770
634
  async function initSeedPhrase({ config, logger, bios }) {
771
635
  const storedSeedPhrase = await bios.seedPhraseStore.get("os");
@@ -785,12 +649,12 @@ async function initSeedPhrase({ config, logger, bios }) {
785
649
  }
786
650
  await bios.seedPhraseStore.set("os", seedPhrase);
787
651
  }
788
- return assertEx14(await bios.seedPhraseStore.get("os"), () => "Unable to acquire mnemonic from bios");
652
+ return assertEx11(await bios.seedPhraseStore.get("os"), () => "Unable to acquire mnemonic from bios");
789
653
  }
790
654
  __name(initSeedPhrase, "initSeedPhrase");
791
655
 
792
656
  // src/init/initServerNode.ts
793
- import { assertEx as assertEx15 } from "@xylabs/sdk-js";
657
+ import { assertEx as assertEx12 } from "@xylabs/sdk-js";
794
658
  import { asArchivistInstance } from "@xyo-network/archivist-model";
795
659
 
796
660
  // src/manifest/getLocator.ts
@@ -1026,7 +890,7 @@ async function writableChainArchivistFromNode(node) {
1026
890
  }
1027
891
  __name(writableChainArchivistFromNode, "writableChainArchivistFromNode");
1028
892
  async function readonlyChainArchivistFromNode(node) {
1029
- return assertEx15(asArchivistInstance(await node.resolve("Chain:Validated"), {
893
+ return assertEx12(asArchivistInstance(await node.resolve("Chain:Validated"), {
1030
894
  required: true
1031
895
  }));
1032
896
  }
@@ -1051,7 +915,7 @@ async function initServerNode({ wallet, logger, config, node: providedNode, tran
1051
915
  transfersSummaryMap,
1052
916
  balancesSummaryMap
1053
917
  });
1054
- assertEx15(await node.start(), () => "Failed to start node");
918
+ assertEx12(await node.start(), () => "Failed to start node");
1055
919
  const writableChainArchivist = await writableChainArchivistFromNode(node);
1056
920
  const readonlyChainArchivist = await readonlyChainArchivistFromNode(node);
1057
921
  const pendingTransactionsArchivist = await pendingTransactionsArchivistFromNode(node);
@@ -1087,7 +951,7 @@ __name(initStatusReporter, "initStatusReporter");
1087
951
 
1088
952
  // src/init/initTransferSummaryMap.ts
1089
953
  import { BaseMongoSdk as BaseMongoSdk2 } from "@xylabs/mongo";
1090
- import { assertEx as assertEx16 } from "@xylabs/sdk-js";
954
+ import { assertEx as assertEx13 } from "@xylabs/sdk-js";
1091
955
  import { MongoMap as MongoMap2 } from "@xyo-network/chain-protocol";
1092
956
  import { hasMongoConfig as hasMongoConfig3, MemoryMap as MemoryMap2 } from "@xyo-network/xl1-sdk";
1093
957
  async function initTransferSummaryMap({ config, logger }) {
@@ -1112,7 +976,7 @@ async function initTransferSummaryMap({ config, logger }) {
1112
976
  maxEntries: 5e3
1113
977
  }
1114
978
  });
1115
- assertEx16(await result.start(), () => "Failed to start transfer summary map");
979
+ assertEx13(await result.start(), () => "Failed to start transfer summary map");
1116
980
  return result;
1117
981
  } else {
1118
982
  logger?.warn("[API] Mongo configuration not found. Using MemoryMap for TransferSummaryMap.");
@@ -1143,6 +1007,14 @@ async function initApiWallet({ config, logger }) {
1143
1007
  }, mnemonic);
1144
1008
  }
1145
1009
  __name(initApiWallet, "initApiWallet");
1010
+ async function initBridgeWallet({ config, logger }) {
1011
+ const { mnemonic } = config.actors.bridge;
1012
+ return await initWallet({
1013
+ config,
1014
+ logger
1015
+ }, mnemonic);
1016
+ }
1017
+ __name(initBridgeWallet, "initBridgeWallet");
1146
1018
  async function initMempoolWallet({ config, logger }) {
1147
1019
  const { mnemonic } = config.actors.mempool;
1148
1020
  return await initWallet({
@@ -1167,16 +1039,24 @@ async function initRewardsRedemptionApiWallet({ config, logger }) {
1167
1039
  }, mnemonic);
1168
1040
  }
1169
1041
  __name(initRewardsRedemptionApiWallet, "initRewardsRedemptionApiWallet");
1042
+ async function initValidatorWallet({ config, logger }) {
1043
+ const { mnemonic } = config.actors.mempool;
1044
+ return await initWallet({
1045
+ config,
1046
+ logger
1047
+ }, mnemonic);
1048
+ }
1049
+ __name(initValidatorWallet, "initValidatorWallet");
1170
1050
 
1171
1051
  // src/orchestrator/Orchestrator.ts
1172
- import { AbstractCreatable, creatable as creatable3 } from "@xylabs/sdk-js";
1173
- function _ts_decorate3(decorators, target, key, desc) {
1052
+ import { AbstractCreatable, creatable as creatable2 } from "@xylabs/sdk-js";
1053
+ function _ts_decorate2(decorators, target, key, desc) {
1174
1054
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1175
1055
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1176
1056
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1177
1057
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1178
1058
  }
1179
- __name(_ts_decorate3, "_ts_decorate");
1059
+ __name(_ts_decorate2, "_ts_decorate");
1180
1060
  var Orchestrator = class extends AbstractCreatable {
1181
1061
  static {
1182
1062
  __name(this, "Orchestrator");
@@ -1229,14 +1109,12 @@ var Orchestrator = class extends AbstractCreatable {
1229
1109
  this.logger?.log("[Orchestrator] Stopped...");
1230
1110
  }
1231
1111
  };
1232
- Orchestrator = _ts_decorate3([
1233
- creatable3()
1112
+ Orchestrator = _ts_decorate2([
1113
+ creatable2()
1234
1114
  ], Orchestrator);
1235
1115
  export {
1236
- BalanceActor,
1237
1116
  DefaultServiceProvider,
1238
1117
  GenericHost,
1239
- MempoolActor,
1240
1118
  NodeManifest,
1241
1119
  Orchestrator,
1242
1120
  PrivateChildManifests,
@@ -1255,6 +1133,7 @@ export {
1255
1133
  getLocator,
1256
1134
  initApiWallet,
1257
1135
  initBalanceSummaryMap,
1136
+ initBridgeWallet,
1258
1137
  initBridgedArchivistModule,
1259
1138
  initBridgedModule,
1260
1139
  initChainFinalizedArchivist,
@@ -1276,6 +1155,7 @@ export {
1276
1155
  initStakeIntentStateArchivist,
1277
1156
  initStatusReporter,
1278
1157
  initTransferSummaryMap,
1158
+ initValidatorWallet,
1279
1159
  loadNode
1280
1160
  };
1281
1161
  //# sourceMappingURL=index.mjs.map