@mainsail/evm-consensus 0.0.1-evm.4 → 0.0.1-evm.6

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.
@@ -6,6 +6,8 @@ export declare class ValidatorSet implements Contracts.ValidatorSet.Service {
6
6
  private readonly evm;
7
7
  restore(): Promise<void>;
8
8
  onCommit(unit: Contracts.Processor.ProcessableUnit): Promise<void>;
9
+ getAllValidators(): Contracts.State.ValidatorWallet[];
10
+ getDirtyValidators(): Contracts.State.ValidatorWallet[];
9
11
  getActiveValidators(): Contracts.State.ValidatorWallet[];
10
12
  getValidator(index: number): Contracts.State.ValidatorWallet;
11
13
  getValidatorIndexByWalletAddress(walletAddress: string): number;
@@ -1 +1 @@
1
- {"version":3,"file":"validator-set.d.ts","sourceRoot":"","sources":["../source/validator-set.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;AAOzE,qBACa,YAAa,YAAW,SAAS,CAAC,YAAY,CAAC,OAAO;;IAElE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgC;IAGpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAIhE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;IAKjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxE,mBAAmB,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,EAAE;IAUxD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe;IAI5D,gCAAgC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;CAyDtE"}
1
+ {"version":3,"file":"validator-set.d.ts","sourceRoot":"","sources":["../source/validator-set.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA2B,MAAM,qBAAqB,CAAC;AAOzE,qBACa,YAAa,YAAW,SAAS,CAAC,YAAY,CAAC,OAAO;;IAElE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgC;IAGpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAIhE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;IAQjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,gBAAgB,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,EAAE;IAIrD,kBAAkB,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,EAAE;IAIvD,mBAAmB,IAAI,SAAS,CAAC,KAAK,CAAC,eAAe,EAAE;IAUxD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe;IAI5D,gCAAgC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;CAsHtE"}
@@ -18,7 +18,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
18
18
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
19
19
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
20
  };
21
- var _ValidatorSet_instances, _ValidatorSet_validators, _ValidatorSet_indexByAddress, _ValidatorSet_buildActiveValidators, _ValidatorSet_getActiveValidators;
21
+ var _ValidatorSet_instances, _ValidatorSet_topValidators, _ValidatorSet_indexByAddress, _ValidatorSet_allValidators, _ValidatorSet_dirtyValidators, _ValidatorSet_buildActiveValidators, _ValidatorSet_calculateChangedValidators, _ValidatorSet_getActiveValidators, _ValidatorSet_getAllValidators;
22
22
  import { inject, injectable, tagged } from "@mainsail/container";
23
23
  import { Contracts, Exceptions, Identifiers } from "@mainsail/contracts";
24
24
  import { ConsensusAbi } from "@mainsail/evm-contracts";
@@ -28,26 +28,37 @@ import { Identifiers as EvmConsensusIdentifiers } from "./identifiers.js";
28
28
  let ValidatorSet = class ValidatorSet {
29
29
  constructor() {
30
30
  _ValidatorSet_instances.add(this);
31
- _ValidatorSet_validators.set(this, []);
31
+ _ValidatorSet_topValidators.set(this, []);
32
32
  _ValidatorSet_indexByAddress.set(this, new Map());
33
+ _ValidatorSet_allValidators.set(this, new Map());
34
+ _ValidatorSet_dirtyValidators.set(this, []);
33
35
  }
34
36
  async restore() {
35
37
  await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_buildActiveValidators).call(this);
38
+ const validators = await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_getAllValidators).call(this);
39
+ __classPrivateFieldSet(this, _ValidatorSet_allValidators, new Map(validators.map((validator) => [validator.address, validator])), "f");
36
40
  }
37
41
  async onCommit(unit) {
38
42
  if (Utils.roundCalculator.isNewRound(unit.height + 1, this.configuration)) {
39
43
  await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_buildActiveValidators).call(this);
40
44
  }
45
+ await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_calculateChangedValidators).call(this);
46
+ }
47
+ getAllValidators() {
48
+ return [...__classPrivateFieldGet(this, _ValidatorSet_allValidators, "f").values()];
49
+ }
50
+ getDirtyValidators() {
51
+ return __classPrivateFieldGet(this, _ValidatorSet_dirtyValidators, "f");
41
52
  }
42
53
  getActiveValidators() {
43
54
  const { activeValidators } = this.configuration.getMilestone();
44
- if (__classPrivateFieldGet(this, _ValidatorSet_validators, "f").length !== activeValidators) {
45
- throw new Exceptions.NotEnoughActiveValidatorsError(__classPrivateFieldGet(this, _ValidatorSet_validators, "f").length, activeValidators);
55
+ if (__classPrivateFieldGet(this, _ValidatorSet_topValidators, "f").length !== activeValidators) {
56
+ throw new Exceptions.NotEnoughActiveValidatorsError(__classPrivateFieldGet(this, _ValidatorSet_topValidators, "f").length, activeValidators);
46
57
  }
47
- return __classPrivateFieldGet(this, _ValidatorSet_validators, "f").slice(0, activeValidators);
58
+ return __classPrivateFieldGet(this, _ValidatorSet_topValidators, "f").slice(0, activeValidators);
48
59
  }
49
60
  getValidator(index) {
50
- return __classPrivateFieldGet(this, _ValidatorSet_validators, "f")[index];
61
+ return __classPrivateFieldGet(this, _ValidatorSet_topValidators, "f")[index];
51
62
  }
52
63
  getValidatorIndexByWalletAddress(walletAddress) {
53
64
  const result = __classPrivateFieldGet(this, _ValidatorSet_indexByAddress, "f").get(walletAddress);
@@ -57,17 +68,34 @@ let ValidatorSet = class ValidatorSet {
57
68
  return result;
58
69
  }
59
70
  };
60
- _ValidatorSet_validators = new WeakMap();
71
+ _ValidatorSet_topValidators = new WeakMap();
61
72
  _ValidatorSet_indexByAddress = new WeakMap();
73
+ _ValidatorSet_allValidators = new WeakMap();
74
+ _ValidatorSet_dirtyValidators = new WeakMap();
62
75
  _ValidatorSet_instances = new WeakSet();
63
76
  _ValidatorSet_buildActiveValidators = async function _ValidatorSet_buildActiveValidators() {
64
77
  const { activeValidators } = this.configuration.getMilestone();
65
78
  const validators = await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_getActiveValidators).call(this);
66
79
  if (validators.length < activeValidators) {
67
- throw new Exceptions.NotEnoughActiveValidatorsError(__classPrivateFieldGet(this, _ValidatorSet_validators, "f").length, activeValidators);
80
+ throw new Exceptions.NotEnoughActiveValidatorsError(__classPrivateFieldGet(this, _ValidatorSet_topValidators, "f").length, activeValidators);
68
81
  }
69
- __classPrivateFieldSet(this, _ValidatorSet_validators, validators.slice(0, activeValidators), "f");
70
- __classPrivateFieldSet(this, _ValidatorSet_indexByAddress, new Map(__classPrivateFieldGet(this, _ValidatorSet_validators, "f").map((validator, index) => [validator.address, index])), "f");
82
+ __classPrivateFieldSet(this, _ValidatorSet_topValidators, validators.slice(0, activeValidators), "f");
83
+ __classPrivateFieldSet(this, _ValidatorSet_indexByAddress, new Map(__classPrivateFieldGet(this, _ValidatorSet_topValidators, "f").map((validator, index) => [validator.address, index])), "f");
84
+ };
85
+ _ValidatorSet_calculateChangedValidators = async function _ValidatorSet_calculateChangedValidators() {
86
+ __classPrivateFieldSet(this, _ValidatorSet_dirtyValidators, [], "f");
87
+ const validators = await __classPrivateFieldGet(this, _ValidatorSet_instances, "m", _ValidatorSet_getAllValidators).call(this);
88
+ for (const validator of validators) {
89
+ const currentValidator = __classPrivateFieldGet(this, _ValidatorSet_allValidators, "f").get(validator.address);
90
+ if (!currentValidator ||
91
+ !currentValidator.voteBalance.isEqualTo(validator.voteBalance) ||
92
+ currentValidator.isResigned !== validator.isResigned ||
93
+ currentValidator.votersCount !== validator.votersCount ||
94
+ currentValidator.blsPublicKey !== validator.blsPublicKey) {
95
+ __classPrivateFieldGet(this, _ValidatorSet_dirtyValidators, "f").push(validator);
96
+ }
97
+ }
98
+ __classPrivateFieldSet(this, _ValidatorSet_allValidators, new Map(validators.map((validator) => [validator.address, validator])), "f");
71
99
  };
72
100
  _ValidatorSet_getActiveValidators = async function _ValidatorSet_getActiveValidators() {
73
101
  const consensusContractAddress = this.app.get(EvmConsensusIdentifiers.Contracts.Addresses.Consensus);
@@ -87,11 +115,43 @@ _ValidatorSet_getActiveValidators = async function _ValidatorSet_getActiveValida
87
115
  const [validators] = iface.decodeFunctionResult("getTopValidators", result.output);
88
116
  const validatorWallets = [];
89
117
  for (const [, validator] of validators.entries()) {
90
- const [address, [voteBalance, , blsPublicKey]] = validator;
118
+ const [address, [votersCount, voteBalance, isResigned, blsPublicKey]] = validator;
119
+ const validatorWallet = {
120
+ address,
121
+ blsPublicKey: blsPublicKey.slice(2),
122
+ isResigned,
123
+ voteBalance: Utils.BigNumber.make(voteBalance),
124
+ votersCount: Number(votersCount),
125
+ };
126
+ validatorWallets.push(validatorWallet);
127
+ }
128
+ return validatorWallets;
129
+ };
130
+ _ValidatorSet_getAllValidators = async function _ValidatorSet_getAllValidators() {
131
+ const consensusContractAddress = this.app.get(EvmConsensusIdentifiers.Contracts.Addresses.Consensus);
132
+ const deployerAddress = this.app.get(EvmConsensusIdentifiers.Internal.Addresses.Deployer);
133
+ const { evmSpec } = this.configuration.getMilestone();
134
+ const iface = new ethers.Interface(ConsensusAbi.abi);
135
+ const data = iface.encodeFunctionData("getAllValidators").slice(2);
136
+ const result = await this.evm.view({
137
+ caller: deployerAddress,
138
+ data: Buffer.from(data, "hex"),
139
+ recipient: consensusContractAddress,
140
+ specId: evmSpec,
141
+ });
142
+ if (!result.success) {
143
+ this.app.terminate("getAllValidators failed");
144
+ }
145
+ const [validators] = iface.decodeFunctionResult("getAllValidators", result.output);
146
+ const validatorWallets = [];
147
+ for (const [, validator] of validators.entries()) {
148
+ const [address, [votersCount, voteBalance, isResigned, blsPublicKey]] = validator;
91
149
  const validatorWallet = {
92
150
  address,
93
151
  blsPublicKey: blsPublicKey.slice(2),
152
+ isResigned,
94
153
  voteBalance: Utils.BigNumber.make(voteBalance),
154
+ votersCount: Number(votersCount),
95
155
  };
96
156
  validatorWallets.push(validatorWallet);
97
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validator-set.js","sourceRoot":"","sources":["../source/validator-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator-set.js","sourceRoot":"","sources":["../source/validator-set.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mainsail/evm-consensus",
3
- "version": "0.0.1-evm.4",
3
+ "version": "0.0.1-evm.6",
4
4
  "description": "EVM development support for the Mainsail blockchain",
5
5
  "license": "GPL-3.0-only",
6
6
  "contributors": [],
@@ -12,10 +12,10 @@
12
12
  ],
13
13
  "dependencies": {
14
14
  "ethers": "^6.11.0",
15
- "@mainsail/container": "0.0.1-evm.4",
16
- "@mainsail/contracts": "0.0.1-evm.4",
17
- "@mainsail/kernel": "0.0.1-evm.4",
18
- "@mainsail/evm-contracts": "0.0.1-evm.4"
15
+ "@mainsail/container": "0.0.1-evm.6",
16
+ "@mainsail/contracts": "0.0.1-evm.6",
17
+ "@mainsail/evm-contracts": "0.0.1-evm.6",
18
+ "@mainsail/kernel": "0.0.1-evm.6"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@types/seedrandom": "^3.0.8",