@vultisig/core-chain 2.14.1 → 2.15.0
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,29 @@
|
|
|
1
1
|
# @vultisig/core-chain
|
|
2
2
|
|
|
3
|
+
## 2.15.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#686](https://github.com/vultisig/vultisig-sdk/pull/686) [`b900fcf`](https://github.com/vultisig/vultisig-sdk/commit/b900fcf95709da28ea7add1ea144d126c9fbcd98) Thanks [@Ehsan-saradar](https://github.com/Ehsan-saradar)! - Add QBTC support to the Cosmos staking signing path and LCD query layer. QBTC
|
|
8
|
+
is a Cosmos-SDK chain (post-quantum testnet, ML-DSA-signed) but lives in
|
|
9
|
+
`OtherChain`, so it sat outside the staking helpers' typing and LCD root
|
|
10
|
+
resolution.
|
|
11
|
+
|
|
12
|
+
- `QBTCHelper.buildTxComponents` now consumes a `signData.signDirect` payload
|
|
13
|
+
verbatim — the `bodyBytes` / `authInfoBytes` already carry the ML-DSA pubkey
|
|
14
|
+
`Any`, gas and fee, so the initiator and every co-signing peer rebuild an
|
|
15
|
+
identical SignDoc hash. Previously it always rebuilt the body from
|
|
16
|
+
`transactionType` (MsgSend / IBC / Vote), which silently turned a staking
|
|
17
|
+
SignDoc into a `MsgSend`. `signAmino` is rejected (ML-DSA is
|
|
18
|
+
SIGN_MODE_DIRECT only). The normal send path (no `signData`) is unchanged.
|
|
19
|
+
- `chains/cosmos/staking/lcdQueries` exports a widened
|
|
20
|
+
`StakingChain = IbcEnabledCosmosChain | Chain.QBTC` and resolves the LCD root
|
|
21
|
+
through a helper that routes QBTC to `qbtcRestUrl` and every other staking
|
|
22
|
+
chain to `cosmosRpcUrl[chain]`.
|
|
23
|
+
|
|
24
|
+
Backward compatible: existing IBC-enabled staking chains route exactly as
|
|
25
|
+
before.
|
|
26
|
+
|
|
3
27
|
## 2.14.1
|
|
4
28
|
|
|
5
29
|
### Patch Changes
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* Generic across every cosmos-sdk chain we support — same paths, just
|
|
9
9
|
* different LCD root. No chain-specific branching.
|
|
10
10
|
*/
|
|
11
|
-
import { IbcEnabledCosmosChain } from '@vultisig/core-chain/Chain';
|
|
11
|
+
import { Chain, IbcEnabledCosmosChain } from '@vultisig/core-chain/Chain';
|
|
12
12
|
export type Coin = {
|
|
13
13
|
denom: string;
|
|
14
14
|
amount: string;
|
|
@@ -123,8 +123,14 @@ export type VestingAccount = PeriodicVestingAccount | ContinuousVestingAccount |
|
|
|
123
123
|
* make sense on `IbcEnabledCosmosChain`. Tighten the type at the boundary
|
|
124
124
|
* so callers can't accidentally hit `/cosmos/staking/...` against a
|
|
125
125
|
* THORChain LCD that doesn't serve it.
|
|
126
|
+
*
|
|
127
|
+
* QBTC is a Cosmos-SDK chain too (post-quantum testnet, MLDSA-signed) and
|
|
128
|
+
* serves the same x/staking + x/distribution endpoints, but it lives in
|
|
129
|
+
* `OtherChain` rather than `CosmosChain` (WalletCore can't sign it), so it
|
|
130
|
+
* isn't a key of `cosmosRpcUrl`. Include it explicitly and resolve its LCD
|
|
131
|
+
* root via `qbtcRestUrl`.
|
|
126
132
|
*/
|
|
127
|
-
type StakingChain =
|
|
133
|
+
export type StakingChain = IbcEnabledCosmosChain | typeof Chain.QBTC;
|
|
128
134
|
export declare const getDelegationsUrl: (chain: StakingChain, delegatorAddress: string) => string;
|
|
129
135
|
export declare const getUnbondingDelegationsUrl: (chain: StakingChain, delegatorAddress: string) => string;
|
|
130
136
|
export declare const getDelegatorRewardsUrl: (chain: StakingChain, delegatorAddress: string) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lcdQueries.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/staking/lcdQueries.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"lcdQueries.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/staking/lcdQueries.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LCD query helpers for the cosmos-sdk staking + distribution modules.
|
|
3
|
+
*
|
|
4
|
+
* Read-only HTTP fetches against the per-chain `cosmosRpcUrl` (which actually
|
|
5
|
+
* points at the LCD/REST endpoint, despite the dict name). All endpoints are
|
|
6
|
+
* unauthenticated, public, and rate-limited at most by the upstream provider.
|
|
7
|
+
*
|
|
8
|
+
* Generic across every cosmos-sdk chain we support — same paths, just
|
|
9
|
+
* different LCD root. No chain-specific branching.
|
|
10
|
+
*/
|
|
11
|
+
import { Chain } from '@vultisig/core-chain/Chain';
|
|
1
12
|
import { cosmosRpcUrl } from '../cosmosRpcUrl.js';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
13
|
+
import { qbtcRestUrl } from '../qbtc/tendermintRpcUrl.js';
|
|
14
|
+
/**
|
|
15
|
+
* LCD/REST root for a staking chain. QBTC isn't keyed in `cosmosRpcUrl`, so
|
|
16
|
+
* route it to its dedicated REST endpoint; every other staking chain is a
|
|
17
|
+
* `CosmosChain` and indexes `cosmosRpcUrl` directly.
|
|
18
|
+
*/
|
|
19
|
+
const stakingLcdRoot = (chain) => (chain === Chain.QBTC ? qbtcRestUrl : cosmosRpcUrl[chain]);
|
|
20
|
+
export const getDelegationsUrl = (chain, delegatorAddress) => `${stakingLcdRoot(chain)}/cosmos/staking/v1beta1/delegations/${delegatorAddress}`;
|
|
21
|
+
export const getUnbondingDelegationsUrl = (chain, delegatorAddress) => `${stakingLcdRoot(chain)}/cosmos/staking/v1beta1/delegators/${delegatorAddress}/unbonding_delegations`;
|
|
22
|
+
export const getDelegatorRewardsUrl = (chain, delegatorAddress) => `${stakingLcdRoot(chain)}/cosmos/distribution/v1beta1/delegators/${delegatorAddress}/rewards`;
|
|
23
|
+
export const getAuthAccountUrl = (chain, address) => `${stakingLcdRoot(chain)}/cosmos/auth/v1beta1/accounts/${address}`;
|
|
6
24
|
/**
|
|
7
25
|
* Validator list endpoint. Optional `status` filter is the canonical way to
|
|
8
26
|
* exclude jailed / unbonding validators from the picker — without it, large
|
|
@@ -18,9 +36,9 @@ export const getValidatorsUrl = (chain, opts = {}) => {
|
|
|
18
36
|
if (opts.paginationKey)
|
|
19
37
|
params.set('pagination.key', opts.paginationKey);
|
|
20
38
|
const qs = params.toString();
|
|
21
|
-
return `${
|
|
39
|
+
return `${stakingLcdRoot(chain)}/cosmos/staking/v1beta1/validators${qs ? `?${qs}` : ''}`;
|
|
22
40
|
};
|
|
23
|
-
export const getValidatorUrl = (chain, validatorAddress) => `${
|
|
41
|
+
export const getValidatorUrl = (chain, validatorAddress) => `${stakingLcdRoot(chain)}/cosmos/staking/v1beta1/validators/${validatorAddress}`;
|
|
24
42
|
async function lcdGet(url, opts = {}) {
|
|
25
43
|
const f = opts.fetchImpl ?? fetch;
|
|
26
44
|
const res = await f(url, { signal: opts.signal });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lcdQueries.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/staking/lcdQueries.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lcdQueries.js","sourceRoot":"","sources":["../../../../../../../packages/core/chain/chains/cosmos/staking/lcdQueries.ts"],"names":[],"mappings":"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"}
|