@xyo-network/chain-mempool 1.19.13 → 1.19.15

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,6 +1,7 @@
1
- import { ActorParamsV3, ActorV3, Config, MempoolRunner } from '@xyo-network/xl1-sdk';
1
+ import { MempoolConfig } from '@xyo-network/chain-orchestration';
2
+ import { ActorParamsV3, ActorV3, MempoolRunner } from '@xyo-network/xl1-sdk';
2
3
  export type MempoolActorParams = ActorParamsV3<{
3
- config: Config;
4
+ config: MempoolConfig;
4
5
  }>;
5
6
  export declare class MempoolActor extends ActorV3<MempoolActorParams> {
6
7
  protected _mempoolRunner: MempoolRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"MempoolActor.d.ts","sourceRoot":"","sources":["../../src/MempoolActor.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,OAAO,EACP,MAAM,EACN,aAAa,EAEd,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAA;CACf,CAAC,CAAA;AAEF,qBACa,YAAa,SAAQ,OAAO,CAAC,kBAAkB,CAAC;IAC3D,SAAS,CAAC,cAAc,EAAG,aAAa,CAAA;IAExC,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,gBAAgB,CAAc;IAEtC,OAAO,CAAC,mBAAmB,CAA8C;IACzE,OAAO,CAAC,sBAAsB,CAAc;IAE5C,SAAS,KAAK,aAAa,kBAE1B;IAEc,aAAa;IAKb,YAAY;IAMZ,WAAW;IAM1B,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,oBAAoB;CAM7B"}
1
+ {"version":3,"file":"MempoolActor.d.ts","sourceRoot":"","sources":["../../src/MempoolActor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAChE,OAAO,EACL,aAAa,EACb,OAAO,EACP,aAAa,EAEd,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,aAAa,CAAA;CACtB,CAAC,CAAA;AAEF,qBACa,YAAa,SAAQ,OAAO,CAAC,kBAAkB,CAAC;IAC3D,SAAS,CAAC,cAAc,EAAG,aAAa,CAAA;IAExC,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,gBAAgB,CAAc;IAEtC,OAAO,CAAC,mBAAmB,CAA8C;IACzE,OAAO,CAAC,sBAAsB,CAAc;IAE5C,SAAS,KAAK,aAAa,kBAE1B;IAEc,aAAa;IAKb,YAAY;IAMZ,WAAW;IAM1B,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,oBAAoB;CAM7B"}
@@ -30,12 +30,10 @@ var MempoolActor = class extends ActorV3 {
30
30
  }
31
31
  async startHandler() {
32
32
  await super.startHandler();
33
- this.restartTransactionTimer();
34
33
  this.restartBlockTimer();
35
34
  }
36
35
  async stopHandler() {
37
36
  await super.stopHandler();
38
- this.stopTransactionTimer();
39
37
  this.stopBlockTimer();
40
38
  }
41
39
  restartBlockTimer() {
@@ -91,17 +89,22 @@ MempoolActor = _ts_decorate([
91
89
 
92
90
  // src/runMempool.ts
93
91
  import { exists } from "@xylabs/sdk-js";
94
- import { initMempoolWallet } from "@xyo-network/chain-orchestration";
95
- var runMempool = /* @__PURE__ */ __name(async (config, orchestrator, locator) => {
96
- const account = await initMempoolWallet({
92
+ import { initActorWallet } from "@xyo-network/chain-orchestration";
93
+ var getMempoolActor = /* @__PURE__ */ __name(async (config, locator) => {
94
+ const account = await initActorWallet({
97
95
  config,
98
- logger: locator.context.logger
96
+ logger: locator.context.logger,
97
+ caches: {},
98
+ singletons: {}
99
99
  });
100
- const mempool = await MempoolActor.create({
100
+ return await MempoolActor.create({
101
101
  account,
102
102
  config,
103
103
  locator
104
104
  });
105
+ }, "getMempoolActor");
106
+ var runMempool = /* @__PURE__ */ __name(async (config, orchestrator, locator) => {
107
+ const mempool = await getMempoolActor(config, locator);
105
108
  const actors = [
106
109
  mempool
107
110
  ].filter(exists);
@@ -112,6 +115,7 @@ var runMempool = /* @__PURE__ */ __name(async (config, orchestrator, locator) =>
112
115
  }, "runMempool");
113
116
  export {
114
117
  MempoolActor,
118
+ getMempoolActor,
115
119
  runMempool
116
120
  };
117
121
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MempoolActor.ts","../../src/runMempool.ts"],"sourcesContent":["import { creatable } from '@xylabs/sdk-js'\nimport {\n ActorParamsV3,\n ActorV3,\n Config,\n MempoolRunner,\n MempoolRunnerMoniker,\n} from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nexport type MempoolActorParams = ActorParamsV3<{\n config: Config\n}>\n\n@creatable()\nexport class MempoolActor extends ActorV3<MempoolActorParams> {\n protected _mempoolRunner!: MempoolRunner\n\n private _blockTimerId: ReturnType<typeof setInterval> | null = null\n private _blockTimerMutex = new Mutex()\n\n private _transactionTimerId: ReturnType<typeof setInterval> | null = null\n private _transactionTimerMutex = new Mutex()\n\n protected get mempoolRunner() {\n return this._mempoolRunner\n }\n\n override async createHandler() {\n await super.createHandler()\n this._mempoolRunner = await this.locator.getInstance(MempoolRunnerMoniker)\n }\n\n override async startHandler() {\n await super.startHandler()\n this.restartTransactionTimer()\n this.restartBlockTimer()\n }\n\n override async stopHandler() {\n await super.stopHandler()\n this.stopTransactionTimer()\n this.stopBlockTimer()\n }\n\n private restartBlockTimer() {\n this.stopBlockTimer()\n this._blockTimerId = setInterval(() => {\n if (this._blockTimerMutex.isLocked()) {\n return\n }\n void this._blockTimerMutex.runExclusive(async () => {\n try {\n await this.mempoolRunner.prunePendingBlocks({ batchSize: 50 })\n } catch (error) {\n this.logger?.error(`[MempoolActor] Error pruning pending blocks: ${(error as Error).message}`)\n }\n })\n }, 1000)\n }\n\n private restartTransactionTimer() {\n this.stopTransactionTimer()\n this._transactionTimerId = setInterval(() => {\n if (this._transactionTimerMutex.isLocked()) {\n return\n }\n void this._transactionTimerMutex.runExclusive(async () => {\n try {\n await this.mempoolRunner.prunePendingTransactions({ batchSize: 50 })\n } catch (error) {\n this.logger?.error(`[MempoolActor] Error pruning pending transactions: ${(error as Error).message}`)\n }\n })\n }, 1000)\n }\n\n private stopBlockTimer() {\n if (this._blockTimerId !== null) {\n clearInterval(this._blockTimerId)\n }\n this._blockTimerId = null\n }\n\n private stopTransactionTimer() {\n if (this._transactionTimerId !== null) {\n clearInterval(this._transactionTimerId)\n }\n this._transactionTimerId = null\n }\n}\n","import { exists } from '@xylabs/sdk-js'\nimport { initMempoolWallet, type OrchestratorInstance } from '@xyo-network/chain-orchestration'\nimport type {\n Config,\n ProviderFactoryLocatorInstance,\n} from '@xyo-network/xl1-sdk'\n\nimport { MempoolActor } from './MempoolActor.ts'\n\nexport const runMempool = async (\n config: Config,\n orchestrator: OrchestratorInstance,\n locator: ProviderFactoryLocatorInstance,\n) => {\n const account = await initMempoolWallet({ config, logger: locator.context.logger })\n // Create actors\n const mempool = await MempoolActor.create({\n account, config, locator,\n })\n const actors = [mempool].filter(exists)\n\n for (const actor of actors) {\n // Register the actor with the orchestrator\n await orchestrator.registerActor(actor)\n }\n // Start the orchestrator => automatically activates the actor\n await orchestrator.start()\n}\n"],"mappings":";;;;AAAA,SAASA,iBAAiB;AAC1B,SAEEC,SAGAC,4BACK;AACP,SAASC,aAAa;;;;;;;;AAOf,IAAMC,eAAN,cAA2BC,QAAAA;SAAAA;;;EACtBC;EAEFC,gBAAuD;EACvDC,mBAAmB,IAAIC,MAAAA;EAEvBC,sBAA6D;EAC7DC,yBAAyB,IAAIF,MAAAA;EAErC,IAAcG,gBAAgB;AAC5B,WAAO,KAAKN;EACd;EAEA,MAAeO,gBAAgB;AAC7B,UAAM,MAAMA,cAAAA;AACZ,SAAKP,iBAAiB,MAAM,KAAKQ,QAAQC,YAAYC,oBAAAA;EACvD;EAEA,MAAeC,eAAe;AAC5B,UAAM,MAAMA,aAAAA;AACZ,SAAKC,wBAAuB;AAC5B,SAAKC,kBAAiB;EACxB;EAEA,MAAeC,cAAc;AAC3B,UAAM,MAAMA,YAAAA;AACZ,SAAKC,qBAAoB;AACzB,SAAKC,eAAc;EACrB;EAEQH,oBAAoB;AAC1B,SAAKG,eAAc;AACnB,SAAKf,gBAAgBgB,YAAY,MAAA;AAC/B,UAAI,KAAKf,iBAAiBgB,SAAQ,GAAI;AACpC;MACF;AACA,WAAK,KAAKhB,iBAAiBiB,aAAa,YAAA;AACtC,YAAI;AACF,gBAAM,KAAKb,cAAcc,mBAAmB;YAAEC,WAAW;UAAG,CAAA;QAC9D,SAASC,OAAO;AACd,eAAKC,QAAQD,MAAM,gDAAiDA,MAAgBE,OAAO,EAAE;QAC/F;MACF,CAAA;IACF,GAAG,GAAA;EACL;EAEQZ,0BAA0B;AAChC,SAAKG,qBAAoB;AACzB,SAAKX,sBAAsBa,YAAY,MAAA;AACrC,UAAI,KAAKZ,uBAAuBa,SAAQ,GAAI;AAC1C;MACF;AACA,WAAK,KAAKb,uBAAuBc,aAAa,YAAA;AAC5C,YAAI;AACF,gBAAM,KAAKb,cAAcmB,yBAAyB;YAAEJ,WAAW;UAAG,CAAA;QACpE,SAASC,OAAO;AACd,eAAKC,QAAQD,MAAM,sDAAuDA,MAAgBE,OAAO,EAAE;QACrG;MACF,CAAA;IACF,GAAG,GAAA;EACL;EAEQR,iBAAiB;AACvB,QAAI,KAAKf,kBAAkB,MAAM;AAC/ByB,oBAAc,KAAKzB,aAAa;IAClC;AACA,SAAKA,gBAAgB;EACvB;EAEQc,uBAAuB;AAC7B,QAAI,KAAKX,wBAAwB,MAAM;AACrCsB,oBAAc,KAAKtB,mBAAmB;IACxC;AACA,SAAKA,sBAAsB;EAC7B;AACF;;;;;;AC1FA,SAASuB,cAAc;AACvB,SAASC,yBAAoD;AAQtD,IAAMC,aAAa,8BACxBC,QACAC,cACAC,YAAAA;AAEA,QAAMC,UAAU,MAAMC,kBAAkB;IAAEJ;IAAQK,QAAQH,QAAQI,QAAQD;EAAO,CAAA;AAEjF,QAAME,UAAU,MAAMC,aAAaC,OAAO;IACxCN;IAASH;IAAQE;EACnB,CAAA;AACA,QAAMQ,SAAS;IAACH;IAASI,OAAOC,MAAAA;AAEhC,aAAWC,SAASH,QAAQ;AAE1B,UAAMT,aAAaa,cAAcD,KAAAA;EACnC;AAEA,QAAMZ,aAAac,MAAK;AAC1B,GAlB0B;","names":["creatable","ActorV3","MempoolRunnerMoniker","Mutex","MempoolActor","ActorV3","_mempoolRunner","_blockTimerId","_blockTimerMutex","Mutex","_transactionTimerId","_transactionTimerMutex","mempoolRunner","createHandler","locator","getInstance","MempoolRunnerMoniker","startHandler","restartTransactionTimer","restartBlockTimer","stopHandler","stopTransactionTimer","stopBlockTimer","setInterval","isLocked","runExclusive","prunePendingBlocks","batchSize","error","logger","message","prunePendingTransactions","clearInterval","exists","initMempoolWallet","runMempool","config","orchestrator","locator","account","initMempoolWallet","logger","context","mempool","MempoolActor","create","actors","filter","exists","actor","registerActor","start"]}
1
+ {"version":3,"sources":["../../src/MempoolActor.ts","../../src/runMempool.ts"],"sourcesContent":["import { creatable } from '@xylabs/sdk-js'\nimport { MempoolConfig } from '@xyo-network/chain-orchestration'\nimport {\n ActorParamsV3,\n ActorV3,\n MempoolRunner,\n MempoolRunnerMoniker,\n} from '@xyo-network/xl1-sdk'\nimport { Mutex } from 'async-mutex'\n\nexport type MempoolActorParams = ActorParamsV3<{\n config: MempoolConfig\n}>\n\n@creatable()\nexport class MempoolActor extends ActorV3<MempoolActorParams> {\n protected _mempoolRunner!: MempoolRunner\n\n private _blockTimerId: ReturnType<typeof setInterval> | null = null\n private _blockTimerMutex = new Mutex()\n\n private _transactionTimerId: ReturnType<typeof setInterval> | null = null\n private _transactionTimerMutex = new Mutex()\n\n protected get mempoolRunner() {\n return this._mempoolRunner\n }\n\n override async createHandler() {\n await super.createHandler()\n this._mempoolRunner = await this.locator.getInstance(MempoolRunnerMoniker)\n }\n\n override async startHandler() {\n await super.startHandler()\n // this.restartTransactionTimer()\n this.restartBlockTimer()\n }\n\n override async stopHandler() {\n await super.stopHandler()\n // this.stopTransactionTimer()\n this.stopBlockTimer()\n }\n\n private restartBlockTimer() {\n this.stopBlockTimer()\n this._blockTimerId = setInterval(() => {\n if (this._blockTimerMutex.isLocked()) {\n return\n }\n void this._blockTimerMutex.runExclusive(async () => {\n try {\n await this.mempoolRunner.prunePendingBlocks({ batchSize: 50 })\n } catch (error) {\n this.logger?.error(`[MempoolActor] Error pruning pending blocks: ${(error as Error).message}`)\n }\n })\n }, 1000)\n }\n\n private restartTransactionTimer() {\n this.stopTransactionTimer()\n this._transactionTimerId = setInterval(() => {\n if (this._transactionTimerMutex.isLocked()) {\n return\n }\n void this._transactionTimerMutex.runExclusive(async () => {\n try {\n await this.mempoolRunner.prunePendingTransactions({ batchSize: 50 })\n } catch (error) {\n this.logger?.error(`[MempoolActor] Error pruning pending transactions: ${(error as Error).message}`)\n }\n })\n }, 1000)\n }\n\n private stopBlockTimer() {\n if (this._blockTimerId !== null) {\n clearInterval(this._blockTimerId)\n }\n this._blockTimerId = null\n }\n\n private stopTransactionTimer() {\n if (this._transactionTimerId !== null) {\n clearInterval(this._transactionTimerId)\n }\n this._transactionTimerId = null\n }\n}\n","import { exists } from '@xylabs/sdk-js'\nimport type { MempoolConfig, OrchestratorInstance } from '@xyo-network/chain-orchestration'\nimport { initActorWallet } from '@xyo-network/chain-orchestration'\nimport type { ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk'\n\nimport { MempoolActor } from './MempoolActor.ts'\n\nexport const getMempoolActor = async (\n config: MempoolConfig,\n locator: ProviderFactoryLocatorInstance,\n) => {\n const account = await initActorWallet({\n config, logger: locator.context.logger, caches: {}, singletons: {},\n })\n\n return await MempoolActor.create({\n account, config, locator,\n })\n}\n\nexport const runMempool = async (\n config: MempoolConfig,\n orchestrator: OrchestratorInstance,\n locator: ProviderFactoryLocatorInstance,\n) => {\n const mempool = await getMempoolActor(config, locator)\n const actors = [mempool].filter(exists)\n\n for (const actor of actors) {\n // Register the actor with the orchestrator\n await orchestrator.registerActor(actor)\n }\n // Start the orchestrator => automatically activates the actor\n await orchestrator.start()\n}\n"],"mappings":";;;;AAAA,SAASA,iBAAiB;AAE1B,SAEEC,SAEAC,4BACK;AACP,SAASC,aAAa;;;;;;;;AAOf,IAAMC,eAAN,cAA2BC,QAAAA;SAAAA;;;EACtBC;EAEFC,gBAAuD;EACvDC,mBAAmB,IAAIC,MAAAA;EAEvBC,sBAA6D;EAC7DC,yBAAyB,IAAIF,MAAAA;EAErC,IAAcG,gBAAgB;AAC5B,WAAO,KAAKN;EACd;EAEA,MAAeO,gBAAgB;AAC7B,UAAM,MAAMA,cAAAA;AACZ,SAAKP,iBAAiB,MAAM,KAAKQ,QAAQC,YAAYC,oBAAAA;EACvD;EAEA,MAAeC,eAAe;AAC5B,UAAM,MAAMA,aAAAA;AAEZ,SAAKC,kBAAiB;EACxB;EAEA,MAAeC,cAAc;AAC3B,UAAM,MAAMA,YAAAA;AAEZ,SAAKC,eAAc;EACrB;EAEQF,oBAAoB;AAC1B,SAAKE,eAAc;AACnB,SAAKb,gBAAgBc,YAAY,MAAA;AAC/B,UAAI,KAAKb,iBAAiBc,SAAQ,GAAI;AACpC;MACF;AACA,WAAK,KAAKd,iBAAiBe,aAAa,YAAA;AACtC,YAAI;AACF,gBAAM,KAAKX,cAAcY,mBAAmB;YAAEC,WAAW;UAAG,CAAA;QAC9D,SAASC,OAAO;AACd,eAAKC,QAAQD,MAAM,gDAAiDA,MAAgBE,OAAO,EAAE;QAC/F;MACF,CAAA;IACF,GAAG,GAAA;EACL;EAEQC,0BAA0B;AAChC,SAAKC,qBAAoB;AACzB,SAAKpB,sBAAsBW,YAAY,MAAA;AACrC,UAAI,KAAKV,uBAAuBW,SAAQ,GAAI;AAC1C;MACF;AACA,WAAK,KAAKX,uBAAuBY,aAAa,YAAA;AAC5C,YAAI;AACF,gBAAM,KAAKX,cAAcmB,yBAAyB;YAAEN,WAAW;UAAG,CAAA;QACpE,SAASC,OAAO;AACd,eAAKC,QAAQD,MAAM,sDAAuDA,MAAgBE,OAAO,EAAE;QACrG;MACF,CAAA;IACF,GAAG,GAAA;EACL;EAEQR,iBAAiB;AACvB,QAAI,KAAKb,kBAAkB,MAAM;AAC/ByB,oBAAc,KAAKzB,aAAa;IAClC;AACA,SAAKA,gBAAgB;EACvB;EAEQuB,uBAAuB;AAC7B,QAAI,KAAKpB,wBAAwB,MAAM;AACrCsB,oBAAc,KAAKtB,mBAAmB;IACxC;AACA,SAAKA,sBAAsB;EAC7B;AACF;;;;;;AC1FA,SAASuB,cAAc;AAEvB,SAASC,uBAAuB;AAKzB,IAAMC,kBAAkB,8BAC7BC,QACAC,YAAAA;AAEA,QAAMC,UAAU,MAAMC,gBAAgB;IACpCH;IAAQI,QAAQH,QAAQI,QAAQD;IAAQE,QAAQ,CAAC;IAAGC,YAAY,CAAC;EACnE,CAAA;AAEA,SAAO,MAAMC,aAAaC,OAAO;IAC/BP;IAASF;IAAQC;EACnB,CAAA;AACF,GAX+B;AAaxB,IAAMS,aAAa,8BACxBV,QACAW,cACAV,YAAAA;AAEA,QAAMW,UAAU,MAAMb,gBAAgBC,QAAQC,OAAAA;AAC9C,QAAMY,SAAS;IAACD;IAASE,OAAOC,MAAAA;AAEhC,aAAWC,SAASH,QAAQ;AAE1B,UAAMF,aAAaM,cAAcD,KAAAA;EACnC;AAEA,QAAML,aAAaO,MAAK;AAC1B,GAd0B;","names":["creatable","ActorV3","MempoolRunnerMoniker","Mutex","MempoolActor","ActorV3","_mempoolRunner","_blockTimerId","_blockTimerMutex","Mutex","_transactionTimerId","_transactionTimerMutex","mempoolRunner","createHandler","locator","getInstance","MempoolRunnerMoniker","startHandler","restartBlockTimer","stopHandler","stopBlockTimer","setInterval","isLocked","runExclusive","prunePendingBlocks","batchSize","error","logger","message","restartTransactionTimer","stopTransactionTimer","prunePendingTransactions","clearInterval","exists","initActorWallet","getMempoolActor","config","locator","account","initActorWallet","logger","context","caches","singletons","MempoolActor","create","runMempool","orchestrator","mempool","actors","filter","exists","actor","registerActor","start"]}
@@ -1,4 +1,6 @@
1
- import { type OrchestratorInstance } from '@xyo-network/chain-orchestration';
2
- import type { Config, ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk';
3
- export declare const runMempool: (config: Config, orchestrator: OrchestratorInstance, locator: ProviderFactoryLocatorInstance) => Promise<void>;
1
+ import type { MempoolConfig, OrchestratorInstance } from '@xyo-network/chain-orchestration';
2
+ import type { ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk';
3
+ import { MempoolActor } from './MempoolActor.ts';
4
+ export declare const getMempoolActor: (config: MempoolConfig, locator: ProviderFactoryLocatorInstance) => Promise<MempoolActor>;
5
+ export declare const runMempool: (config: MempoolConfig, orchestrator: OrchestratorInstance, locator: ProviderFactoryLocatorInstance) => Promise<void>;
4
6
  //# sourceMappingURL=runMempool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runMempool.d.ts","sourceRoot":"","sources":["../../src/runMempool.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAC/F,OAAO,KAAK,EACV,MAAM,EACN,8BAA8B,EAC/B,MAAM,sBAAsB,CAAA;AAI7B,eAAO,MAAM,UAAU,GACrB,QAAQ,MAAM,EACd,cAAc,oBAAoB,EAClC,SAAS,8BAA8B,kBAexC,CAAA"}
1
+ {"version":3,"file":"runMempool.d.ts","sourceRoot":"","sources":["../../src/runMempool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAE3F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAA;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,eAAO,MAAM,eAAe,GAC1B,QAAQ,aAAa,EACrB,SAAS,8BAA8B,0BASxC,CAAA;AAED,eAAO,MAAM,UAAU,GACrB,QAAQ,aAAa,EACrB,cAAc,oBAAoB,EAClC,SAAS,8BAA8B,kBAWxC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/chain-mempool",
3
- "version": "1.19.13",
3
+ "version": "1.19.15",
4
4
  "description": "XYO Layer One API",
5
5
  "homepage": "https://xylabs.com",
6
6
  "bugs": {
@@ -49,51 +49,56 @@
49
49
  "types": "tsc --noEmit -p tsconfig.test.json"
50
50
  },
51
51
  "dependencies": {
52
- "@xylabs/sdk-js": "~5.0.79",
53
- "@xyo-network/boundwitness-model": "~5.3.2",
54
- "@xyo-network/chain-orchestration": "~1.19.13",
55
- "@xyo-network/manifest-model": "~5.3.2",
56
- "@xyo-network/module-factory-locator": "~5.3.2",
57
- "@xyo-network/module-model": "~5.3.2",
58
- "@xyo-network/node-model": "~5.3.2",
59
- "@xyo-network/payload-model": "~5.3.2",
60
- "@xyo-network/wallet-model": "~5.3.2",
61
- "@xyo-network/xl1-sdk": "~1.23.21",
52
+ "@xyo-network/chain-orchestration": "~1.19.15",
62
53
  "async-mutex": "^0.5.0"
63
54
  },
64
55
  "devDependencies": {
65
56
  "@types/compression": "~1.8.1",
66
57
  "@types/cors": "~2.8.19",
67
- "@types/express": "5.0.6",
58
+ "@types/express": "^5.0.6",
68
59
  "@types/express-serve-static-core": "~5.1.1",
69
60
  "@types/node": "~25.2.3",
70
61
  "@xylabs/mongo": "~5.0.79",
71
62
  "@xylabs/sdk-js": "~5.0.79",
72
63
  "@xylabs/ts-scripts-yarn3": "~7.3.2",
73
64
  "@xylabs/tsconfig": "~7.3.2",
74
- "@xyo-network/account": "~5.3.2",
75
- "@xyo-network/account-model": "~5.3.2",
76
- "@xyo-network/archivist-abstract": "~5.3.2",
77
- "@xyo-network/archivist-memory": "~5.3.2",
78
- "@xyo-network/archivist-mongodb": "~5.3.2",
79
- "@xyo-network/archivist-view": "~5.3.2",
65
+ "@xyo-network/account": "~5.3.5",
66
+ "@xyo-network/account-model": "~5.3.5",
67
+ "@xyo-network/archivist-abstract": "~5.3.5",
68
+ "@xyo-network/archivist-memory": "~5.3.5",
69
+ "@xyo-network/archivist-mongodb": "~5.3.5",
70
+ "@xyo-network/archivist-view": "~5.3.5",
80
71
  "@xyo-network/bios-model": "~7.2.1",
81
- "@xyo-network/boundwitness-builder": "~5.3.2",
82
- "@xyo-network/manifest-wrapper": "~5.3.2",
83
- "@xyo-network/module-abstract-mongodb": "~5.3.2",
84
- "@xyo-network/module-model-mongodb": "~5.3.2",
85
- "@xyo-network/node-memory": "~5.3.2",
86
- "@xyo-network/sentinel-memory": "~5.3.2",
87
- "@xyo-network/wallet": "~5.3.2",
88
- "@xyo-network/xl1-sdk": "~1.23.21",
72
+ "@xyo-network/boundwitness-builder": "~5.3.5",
73
+ "@xyo-network/manifest-wrapper": "~5.3.5",
74
+ "@xyo-network/module-abstract-mongodb": "~5.3.5",
75
+ "@xyo-network/module-model-mongodb": "~5.3.5",
76
+ "@xyo-network/node-memory": "~5.3.5",
77
+ "@xyo-network/sdk-js": "~5.3.5",
78
+ "@xyo-network/sentinel-memory": "~5.3.5",
79
+ "@xyo-network/wallet": "~5.3.5",
80
+ "@xyo-network/xl1-sdk": "~1.24.15",
89
81
  "async-mutex": "~0.5.0",
90
- "dotenv": "~17.2.4",
82
+ "axios": "^1.13.5",
83
+ "dotenv": "~17.3.1",
91
84
  "eslint": "^9.39.2",
85
+ "ethers": "^6.16.0",
86
+ "mongodb": "^7.1.0",
92
87
  "nodemon": "~3.1.11",
93
88
  "tslib": "~2.8.1",
94
89
  "typescript": "~5.9.3",
95
90
  "vitest": "~4.0.18",
96
- "vitest-mock-extended": "~3.1.0"
91
+ "vitest-mock-extended": "~3.1.0",
92
+ "zod": "^4.3.6"
93
+ },
94
+ "peerDependencies": {
95
+ "@xylabs/sdk-js": "^5",
96
+ "@xyo-network/sdk-js": "^5",
97
+ "@xyo-network/xl1-sdk": "^1",
98
+ "axios": "^1",
99
+ "ethers": "^6",
100
+ "mongodb": "^7",
101
+ "zod": "^4"
97
102
  },
98
103
  "engines": {
99
104
  "node": ">=22.3 <23"
@@ -1,15 +1,15 @@
1
1
  import { creatable } from '@xylabs/sdk-js'
2
+ import { MempoolConfig } from '@xyo-network/chain-orchestration'
2
3
  import {
3
4
  ActorParamsV3,
4
5
  ActorV3,
5
- Config,
6
6
  MempoolRunner,
7
7
  MempoolRunnerMoniker,
8
8
  } from '@xyo-network/xl1-sdk'
9
9
  import { Mutex } from 'async-mutex'
10
10
 
11
11
  export type MempoolActorParams = ActorParamsV3<{
12
- config: Config
12
+ config: MempoolConfig
13
13
  }>
14
14
 
15
15
  @creatable()
@@ -33,13 +33,13 @@ export class MempoolActor extends ActorV3<MempoolActorParams> {
33
33
 
34
34
  override async startHandler() {
35
35
  await super.startHandler()
36
- this.restartTransactionTimer()
36
+ // this.restartTransactionTimer()
37
37
  this.restartBlockTimer()
38
38
  }
39
39
 
40
40
  override async stopHandler() {
41
41
  await super.stopHandler()
42
- this.stopTransactionTimer()
42
+ // this.stopTransactionTimer()
43
43
  this.stopBlockTimer()
44
44
  }
45
45
 
package/src/runMempool.ts CHANGED
@@ -1,22 +1,29 @@
1
1
  import { exists } from '@xylabs/sdk-js'
2
- import { initMempoolWallet, type OrchestratorInstance } from '@xyo-network/chain-orchestration'
3
- import type {
4
- Config,
5
- ProviderFactoryLocatorInstance,
6
- } from '@xyo-network/xl1-sdk'
2
+ import type { MempoolConfig, OrchestratorInstance } from '@xyo-network/chain-orchestration'
3
+ import { initActorWallet } from '@xyo-network/chain-orchestration'
4
+ import type { ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk'
7
5
 
8
6
  import { MempoolActor } from './MempoolActor.ts'
9
7
 
10
- export const runMempool = async (
11
- config: Config,
12
- orchestrator: OrchestratorInstance,
8
+ export const getMempoolActor = async (
9
+ config: MempoolConfig,
13
10
  locator: ProviderFactoryLocatorInstance,
14
11
  ) => {
15
- const account = await initMempoolWallet({ config, logger: locator.context.logger })
16
- // Create actors
17
- const mempool = await MempoolActor.create({
12
+ const account = await initActorWallet({
13
+ config, logger: locator.context.logger, caches: {}, singletons: {},
14
+ })
15
+
16
+ return await MempoolActor.create({
18
17
  account, config, locator,
19
18
  })
19
+ }
20
+
21
+ export const runMempool = async (
22
+ config: MempoolConfig,
23
+ orchestrator: OrchestratorInstance,
24
+ locator: ProviderFactoryLocatorInstance,
25
+ ) => {
26
+ const mempool = await getMempoolActor(config, locator)
20
27
  const actors = [mempool].filter(exists)
21
28
 
22
29
  for (const actor of actors) {