@vultisig/core-mpc 1.3.4 → 1.3.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @vultisig/core-mpc
2
2
 
3
+ ## 1.3.6
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`c87816b`](https://github.com/vultisig/vultisig-sdk/commit/c87816b6797e8237d7a94923025311e479e0c520)]:
8
+ - @vultisig/core-chain@2.9.0
9
+
10
+ ## 1.3.5
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [[`9e405c9`](https://github.com/vultisig/vultisig-sdk/commit/9e405c9459713c5391ca6a85a548eb3750ec2872)]:
15
+ - @vultisig/core-chain@2.8.0
16
+
3
17
  ## 1.3.4
4
18
 
5
19
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/polkadot/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAGzD,eAAO,MAAM,wBAAwB,EAAE,wBAAwB,CAAC,kBAAkB,CA8BjF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/polkadot/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAGzD,eAAO,MAAM,wBAAwB,EAAE,wBAAwB,CAAC,kBAAkB,CA6CjF,CAAA"}
@@ -8,14 +8,29 @@ import { refinePolkadotChainSpecific } from './refine.js';
8
8
  export const getPolkadotChainSpecific = async ({ keysignPayload, walletCore, }) => {
9
9
  const client = await getPolkadotClient();
10
10
  const { address } = getKeysignCoin(keysignPayload);
11
- const { specVersion, transactionVersion } = await client.rpc.state.getRuntimeVersion();
11
+ // Fetch the header ONCE and derive both the era checkpoint block number
12
+ // and its block hash from the same response. Doing them as two separate
13
+ // RPC calls (getBlockHash + getHeader) lets the chain head advance
14
+ // between the two — the era then encodes phase = (N+1) % period while
15
+ // `additional_signed.blockHash` still holds the hash of block N. The
16
+ // runtime recomputes the checkpoint at validation, finds the wrong hash,
17
+ // and rejects with InvalidTransaction::BadProof; substrate then bans the
18
+ // extrinsic hash so every retry comes back as "Transaction is
19
+ // temporarily banned". On Asset Hub this race fires often enough to be
20
+ // user-visible.
21
+ const [{ specVersion, transactionVersion }, header, nextIndex, genesisHash] = await Promise.all([
22
+ client.rpc.state.getRuntimeVersion(),
23
+ client.rpc.chain.getHeader(),
24
+ client.rpc.system.accountNextIndex(address),
25
+ client.rpc.chain.getBlockHash(0),
26
+ ]);
12
27
  const chainSpecific = create(PolkadotSpecificSchema, {
13
- recentBlockHash: (await client.rpc.chain.getBlockHash()).toHex(),
14
- nonce: (await client.rpc.system.accountNextIndex(address)).toBigInt(),
15
- currentBlockNumber: (await client.rpc.chain.getHeader()).number.toString(),
28
+ recentBlockHash: header.hash.toHex(),
29
+ nonce: nextIndex.toBigInt(),
30
+ currentBlockNumber: header.number.toString(),
16
31
  specVersion: specVersion.toNumber(),
17
32
  transactionVersion: transactionVersion.toNumber(),
18
- genesisHash: (await client.rpc.chain.getBlockHash(0)).toHex(),
33
+ genesisHash: genesisHash.toHex(),
19
34
  gas: polkadotConfig.fee,
20
35
  });
21
36
  return withFallback(attempt(refinePolkadotChainSpecific({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/polkadot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qEAAqE,CAAA;AAC5G,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAE9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,MAAM,CAAC,MAAM,wBAAwB,GAAiD,KAAK,EAAE,EAC3F,cAAc,EACd,UAAU,GACX,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAA;IAExC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAElD,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAA;IAEtF,MAAM,aAAa,GAAG,MAAM,CAAC,sBAAsB,EAAE;QACnD,eAAe,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE;QAChE,KAAK,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;QACrE,kBAAkB,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC1E,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;QACnC,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;QACjD,WAAW,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;QAC7D,GAAG,EAAE,cAAc,CAAC,GAAG;KACxB,CAAC,CAAA;IAEF,OAAO,YAAY,CACjB,OAAO,CACL,2BAA2B,CAAC;QAC1B,cAAc;QACd,aAAa;QACb,UAAU;KACX,CAAC,CACH,EACD,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/core/mpc/keysign/chainSpecific/resolvers/polkadot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qEAAqE,CAAA;AAC5G,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAEnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAE9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,MAAM,CAAC,MAAM,wBAAwB,GAAiD,KAAK,EAAE,EAC3F,cAAc,EACd,UAAU,GACX,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAA;IAExC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,cAAc,CAAC,CAAA;IAElD,wEAAwE;IACxE,wEAAwE;IACxE,mEAAmE;IACnE,sEAAsE;IACtE,qEAAqE;IACrE,yEAAyE;IACzE,yEAAyE;IACzE,8DAA8D;IAC9D,uEAAuE;IACvE,gBAAgB;IAChB,MAAM,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9F,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE;QACpC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE;QAC5B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;KACjC,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,MAAM,CAAC,sBAAsB,EAAE;QACnD,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;QACpC,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE;QAC3B,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC5C,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;QACnC,kBAAkB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;QACjD,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE;QAChC,GAAG,EAAE,cAAc,CAAC,GAAG;KACxB,CAAC,CAAA;IAEF,OAAO,YAAY,CACjB,OAAO,CACL,2BAA2B,CAAC;QAC1B,cAAc;QACd,aAAa;QACb,UAAU;KACX,CAAC,CACH,EACD,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vultisig/core-mpc",
3
- "version": "1.3.4",
3
+ "version": "1.3.6",
4
4
  "description": "MPC, keysign, and vault types shared across Vultisig clients",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -994,7 +994,7 @@
994
994
  "@noble/hashes": "^1.8.0",
995
995
  "@solana/web3.js": "^1.98.4",
996
996
  "@trustwallet/wallet-core": "^4.6.9",
997
- "@vultisig/core-chain": "2.7.0",
997
+ "@vultisig/core-chain": "2.9.0",
998
998
  "@vultisig/core-config": "0.9.1",
999
999
  "@vultisig/lib-dkls": "0.9.0",
1000
1000
  "@vultisig/lib-mldsa": "0.9.0",