@moonwell-fi/moonwell-sdk 0.14.0 → 0.16.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 +14 -0
- package/_cjs/actions/core/getUserBalances.js +10 -9
- package/_cjs/actions/core/getUserBalances.js.map +1 -1
- package/_cjs/actions/governance/getDelegates.js +6 -1
- package/_cjs/actions/governance/getDelegates.js.map +1 -1
- package/_cjs/actions/governance/getUserVotingPowers.js +4 -4
- package/_cjs/actions/governance/getUserVotingPowers.js.map +1 -1
- package/_cjs/actions/governance/ipfs.js +45 -0
- package/_cjs/actions/governance/ipfs.js.map +1 -0
- package/_cjs/actions/governance/proposals/common.js +27 -3
- package/_cjs/actions/governance/proposals/common.js.map +1 -1
- package/_cjs/actions/governance/proposals/getProposal.js +6 -1
- package/_cjs/actions/governance/proposals/getProposal.js.map +1 -1
- package/_cjs/actions/governance/proposals/getProposals.js +13 -3
- package/_cjs/actions/governance/proposals/getProposals.js.map +1 -1
- package/_cjs/environments/definitions/ethereum/contracts.js +3 -0
- package/_cjs/environments/definitions/ethereum/contracts.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_esm/actions/core/getUserBalances.js +14 -9
- package/_esm/actions/core/getUserBalances.js.map +1 -1
- package/_esm/actions/governance/getDelegates.js +7 -4
- package/_esm/actions/governance/getDelegates.js.map +1 -1
- package/_esm/actions/governance/getUserVotingPowers.js +4 -4
- package/_esm/actions/governance/getUserVotingPowers.js.map +1 -1
- package/_esm/actions/governance/ipfs.js +69 -0
- package/_esm/actions/governance/ipfs.js.map +1 -0
- package/_esm/actions/governance/proposals/common.js +43 -5
- package/_esm/actions/governance/proposals/common.js.map +1 -1
- package/_esm/actions/governance/proposals/getProposal.js +7 -2
- package/_esm/actions/governance/proposals/getProposal.js.map +1 -1
- package/_esm/actions/governance/proposals/getProposals.js +16 -4
- package/_esm/actions/governance/proposals/getProposals.js.map +1 -1
- package/_esm/environments/definitions/ethereum/contracts.js +3 -1
- package/_esm/environments/definitions/ethereum/contracts.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_types/actions/core/getUserBalances.d.ts.map +1 -1
- package/_types/actions/governance/getDelegates.d.ts.map +1 -1
- package/_types/actions/governance/ipfs.d.ts +33 -0
- package/_types/actions/governance/ipfs.d.ts.map +1 -0
- package/_types/actions/governance/proposals/common.d.ts +16 -1
- package/_types/actions/governance/proposals/common.d.ts.map +1 -1
- package/_types/actions/governance/proposals/getProposal.d.ts.map +1 -1
- package/_types/actions/governance/proposals/getProposals.d.ts.map +1 -1
- package/_types/client/createMoonwellClient.d.ts +6 -0
- package/_types/client/createMoonwellClient.d.ts.map +1 -1
- package/_types/environments/definitions/ethereum/contracts.d.ts +3 -0
- package/_types/environments/definitions/ethereum/contracts.d.ts.map +1 -1
- package/_types/environments/index.d.ts +3 -0
- package/_types/environments/index.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/actions/core/getUserBalances.ts +20 -15
- package/actions/governance/getDelegates.ts +7 -4
- package/actions/governance/getUserVotingPowers.ts +4 -4
- package/actions/governance/ipfs.ts +82 -0
- package/actions/governance/proposals/common.ts +56 -4
- package/actions/governance/proposals/getProposal.ts +8 -0
- package/actions/governance/proposals/getProposals.ts +16 -2
- package/environments/definitions/ethereum/contracts.ts +3 -1
- package/errors/version.ts +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMoonwellClient.d.ts","sourceRoot":"","sources":["../../client/createMoonwellClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAC7C,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EAUrB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,MAAM,cAAc,CACxB,YAAY,GAAG;KAAG,IAAI,IAAI,eAAe,CAAC,CAAC,EAAE,WAAW;CAAE,IACxD;IACF,YAAY,EAAE,QAAQ,CACpB;SACG,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,eAAe;KACvE,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,UAAU,CACX,GAAG,mBAAmB;KACxB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,UAAU,CACX,GAAG,mBAAmB;KACxB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,WAAW,CACZ,GAAG,oBAAoB;KACzB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,UAAU,CACX,GAAG,mBAAmB;KACxB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,WAAW,CACZ,GAAG,oBAAoB;KACzB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,UAAU,CACX,GAAG,mBAAmB;KACxB,GAAG;SACD,IAAI,IAAI,MAAM,YAAY,IAAI,OAAO,CACpC,IAAI,EACJ,SAAS,CACV,GAAG,kBAAkB;KACvB,CACF,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,QAAQ,IAAI,EAAE,SAAS,QAAQ,GACtD,EAAE,GACF;KAAG,IAAI,IAAI,eAAe,CAAC,CAAC,EAAE,aAAa;CAAE,CAAC;AAElD,eAAO,MAAM,oBAAoB,GAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ;IAC3D,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KACzC,IAAI,CAAC;CACX;qBA6BM,IAAI
|
|
1
|
+
{"version":3,"file":"createMoonwellClient.d.ts","sourceRoot":"","sources":["../../client/createMoonwellClient.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAAJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gFAkDV,CAAC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export declare const contracts: {
|
|
2
|
+
readonly stakingToken: "stkWELL";
|
|
2
3
|
readonly governanceToken: "WELL";
|
|
4
|
+
readonly views: "0xA061Ed814bBd1b03e8df0B7AbEbc40f4A6feb895";
|
|
5
|
+
readonly multichainGovernor: "0x8769B70ac7c93AF0e75de0D69877709B66d75838";
|
|
3
6
|
};
|
|
4
7
|
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/contracts.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../environments/definitions/ethereum/contracts.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS;;;;;CAQpB,CAAC"}
|
|
@@ -2195,7 +2195,10 @@ export declare const publicEnvironments: {
|
|
|
2195
2195
|
readonly symbol: "stkWELL";
|
|
2196
2196
|
};
|
|
2197
2197
|
}, {}, {}, {
|
|
2198
|
+
readonly stakingToken: "stkWELL";
|
|
2198
2199
|
readonly governanceToken: "WELL";
|
|
2200
|
+
readonly views: "0xA061Ed814bBd1b03e8df0B7AbEbc40f4A6feb895";
|
|
2201
|
+
readonly multichainGovernor: "0x8769B70ac7c93AF0e75de0D69877709B66d75838";
|
|
2199
2202
|
}, {
|
|
2200
2203
|
governance: {
|
|
2201
2204
|
token: "WELL";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../environments/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../environments/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.
|
|
1
|
+
export declare const version = "0.16.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -79,8 +79,12 @@ async function getTokenBalancesFromEnvironment(
|
|
|
79
79
|
environment: Environment,
|
|
80
80
|
userAddress: Address,
|
|
81
81
|
): Promise<{ amount: bigint; token: `0x${string}` }[]> {
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
// Try the views multicall first (single RPC for N tokens). Some chains ship a
|
|
83
|
+
// staking-only views contract (Ethereum's at the time of writing) that doesn't
|
|
84
|
+
// implement getTokensBalances and reverts on the call — in that case fall
|
|
85
|
+
// through to per-token balanceOf reads instead of returning empty balances.
|
|
86
|
+
if (environment.contracts.views) {
|
|
87
|
+
try {
|
|
84
88
|
const tokenBalancesFromView =
|
|
85
89
|
await environment.contracts.views.read.getTokensBalances([
|
|
86
90
|
Object.values(environment.config.tokens).map(
|
|
@@ -90,22 +94,23 @@ async function getTokenBalancesFromEnvironment(
|
|
|
90
94
|
]);
|
|
91
95
|
|
|
92
96
|
return [...tokenBalancesFromView];
|
|
97
|
+
} catch (error) {
|
|
98
|
+
environment.onError?.(error, {
|
|
99
|
+
source: "user-balances-views-fallback",
|
|
100
|
+
chainId: environment.chainId,
|
|
101
|
+
});
|
|
93
102
|
}
|
|
103
|
+
}
|
|
94
104
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
105
|
+
const tokenBalancesSettled = await Promise.allSettled(
|
|
106
|
+
Object.values(environment.config.tokens).map((token) =>
|
|
107
|
+
getTokenBalance(environment, userAddress, token.address),
|
|
108
|
+
),
|
|
109
|
+
);
|
|
100
110
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
return res;
|
|
105
|
-
} catch (error) {
|
|
106
|
-
console.error("getTokenBalancesFromEnvironment error", error);
|
|
107
|
-
return [];
|
|
108
|
-
}
|
|
111
|
+
return tokenBalancesSettled.flatMap((s) =>
|
|
112
|
+
s.status === "fulfilled" ? s.value : [],
|
|
113
|
+
);
|
|
109
114
|
}
|
|
110
115
|
|
|
111
116
|
export async function getUserBalances<
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isAddress } from "viem";
|
|
2
|
-
import { base, moonbeam, optimism } from "viem/chains";
|
|
2
|
+
import { base, mainnet, moonbeam, optimism } from "viem/chains";
|
|
3
3
|
import type { MoonwellClient } from "../../client/createMoonwellClient.js";
|
|
4
4
|
import {
|
|
5
5
|
type Environment,
|
|
@@ -28,9 +28,12 @@ export async function getDelegates(
|
|
|
28
28
|
const apiVoters = await fetchAllVoters(governanceEnvironment);
|
|
29
29
|
const forumProfiles = await getForumProfiles();
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
const targetChainIds = [
|
|
32
|
+
moonbeam.id,
|
|
33
|
+
base.id,
|
|
34
|
+
optimism.id,
|
|
35
|
+
mainnet.id,
|
|
36
|
+
] as const;
|
|
34
37
|
const envs = Object.values(client.environments as Environment[]).filter(
|
|
35
38
|
(env) =>
|
|
36
39
|
env.contracts.views !== undefined &&
|
|
@@ -9,7 +9,7 @@ import type { OptionalNetworkParameterType } from "../../common/types.js";
|
|
|
9
9
|
import type { Chain, GovernanceToken } from "../../environments/index.js";
|
|
10
10
|
import type { UserVotingPowers } from "../../types/userVotingPowers.js";
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const warnedSkippedEnvs = new Set<string>();
|
|
13
13
|
|
|
14
14
|
export type GetUserVotingPowersParameters<
|
|
15
15
|
environments,
|
|
@@ -60,9 +60,9 @@ export async function getUserVotingPowers<
|
|
|
60
60
|
}
|
|
61
61
|
const views = env.contracts.views;
|
|
62
62
|
if (views === undefined) {
|
|
63
|
-
const key = `${env.chainId}:${governanceToken}`;
|
|
64
|
-
if (!
|
|
65
|
-
|
|
63
|
+
const key = `${env.chainId}:${governanceToken}:no-views`;
|
|
64
|
+
if (!warnedSkippedEnvs.has(key)) {
|
|
65
|
+
warnedSkippedEnvs.add(key);
|
|
66
66
|
console.warn(
|
|
67
67
|
`[moonwell-sdk] getUserVotingPowers: skipping chainId=${env.chainId} for governanceToken=${governanceToken} — environment holds the token but has no views contract.`,
|
|
68
68
|
);
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { Environment } from "../../environments/index.js";
|
|
2
|
+
import { getWithRetry } from "../axiosWithRetry.js";
|
|
3
|
+
import type { ApiProposal } from "./governor-api-client.js";
|
|
4
|
+
|
|
5
|
+
const PINATA_GATEWAY = "https://d4529a05.mypinata.cloud/ipfs";
|
|
6
|
+
|
|
7
|
+
// IPFS content is content-addressed, so a per-hash result is immutable and the
|
|
8
|
+
// cache lives for the process lifetime — no TTL needed. Repeated getProposals()
|
|
9
|
+
// calls in the same Node/browser session reuse the resolved markdown.
|
|
10
|
+
const ipfsContentCache = new Map<string, string>();
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Strip the `ipfs://` prefix from an indexer-supplied URI. Returns null for
|
|
14
|
+
* anything that isn't an IPFS URI (including empty strings and undefined),
|
|
15
|
+
* which lets callers skip the fetch with a single check.
|
|
16
|
+
*/
|
|
17
|
+
export const parseIpfsHash = (uri: string | undefined): string | null => {
|
|
18
|
+
if (!uri) return null;
|
|
19
|
+
return uri.match(/^ipfs:\/\/(.+)$/)?.[1] ?? null;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Fetch a single IPFS resource via the Pinata gateway. Cached by hash.
|
|
24
|
+
*
|
|
25
|
+
* `responseType: "text"` disables axios's default JSON auto-parse so we keep
|
|
26
|
+
* the markdown body verbatim. We additionally reject non-string responses so
|
|
27
|
+
* an HTML error page or JSON payload doesn't poison the cache as
|
|
28
|
+
* `"[object Object]"` — the caller's per-proposal catch keeps the `ipfs://`
|
|
29
|
+
* URI in place when that happens.
|
|
30
|
+
*/
|
|
31
|
+
export const fetchIpfsContent = async (hash: string): Promise<string> => {
|
|
32
|
+
const cached = ipfsContentCache.get(hash);
|
|
33
|
+
if (cached !== undefined) return cached;
|
|
34
|
+
|
|
35
|
+
const response = await getWithRetry<string>(`${PINATA_GATEWAY}/${hash}`, {
|
|
36
|
+
responseType: "text",
|
|
37
|
+
});
|
|
38
|
+
if (typeof response.data !== "string") {
|
|
39
|
+
throw new Error(
|
|
40
|
+
`[fetchIpfsContent] non-string body for hash=${hash} (typeof=${typeof response.data})`,
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
ipfsContentCache.set(hash, response.data);
|
|
44
|
+
return response.data;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* For every proposal whose `description` is an `ipfs://` URI, fetch the
|
|
49
|
+
* underlying markdown from Pinata and replace `description` in place. All
|
|
50
|
+
* fetches run in parallel.
|
|
51
|
+
*
|
|
52
|
+
* Failures are logged via console.warn AND surfaced through
|
|
53
|
+
* `env.onError` (matching the convention used by `getProposalData` /
|
|
54
|
+
* `getExtendedProposalData`), then swallowed per-proposal: the `ipfs://` URI
|
|
55
|
+
* is left untouched so consumers can detect (e.g. via
|
|
56
|
+
* `description.startsWith("ipfs://")`) and render a fallback. The bulk call
|
|
57
|
+
* never rejects, so a single bad pin doesn't kill `getProposals()` for
|
|
58
|
+
* everyone.
|
|
59
|
+
*/
|
|
60
|
+
export const resolveIpfsDescriptions = async (
|
|
61
|
+
proposals: ApiProposal[],
|
|
62
|
+
env: Environment,
|
|
63
|
+
): Promise<void> => {
|
|
64
|
+
await Promise.all(
|
|
65
|
+
proposals.map(async (proposal) => {
|
|
66
|
+
const hash = parseIpfsHash(proposal.description);
|
|
67
|
+
if (!hash) return;
|
|
68
|
+
try {
|
|
69
|
+
proposal.description = await fetchIpfsContent(hash);
|
|
70
|
+
} catch (error) {
|
|
71
|
+
console.warn(
|
|
72
|
+
`[resolveIpfsDescriptions] failed to fetch hash=${hash}:`,
|
|
73
|
+
error,
|
|
74
|
+
);
|
|
75
|
+
env.onError?.(error, {
|
|
76
|
+
source: "governance-ipfs-description",
|
|
77
|
+
chainId: proposal.chainId,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}),
|
|
81
|
+
);
|
|
82
|
+
};
|
|
@@ -262,12 +262,61 @@ const getLegacyArtemisMaxId = async (
|
|
|
262
262
|
}
|
|
263
263
|
};
|
|
264
264
|
|
|
265
|
+
/**
|
|
266
|
+
* Reads the multichain governor's quorum on every chain that holds an active
|
|
267
|
+
* proposal but isn't the one we'd normally read through. Returns a chainId →
|
|
268
|
+
* quorum map; chains with no `multichainGovernor` wired are omitted, as are
|
|
269
|
+
* chains whose quorum read reverted. Callers substitute `0n` for misses via
|
|
270
|
+
* the `options.crossChainQuorums?.get(...) ?? 0n` pattern.
|
|
271
|
+
*
|
|
272
|
+
* Read failures are routed through `onError` so Sentry-wired consumers see
|
|
273
|
+
* them — matching `getProposalData` / `getCrossChainProposalData` /
|
|
274
|
+
* `getExtendedProposalData`. The caller's `governanceEnvironment` carries
|
|
275
|
+
* `onError` since we don't have one per foreign chain in scope.
|
|
276
|
+
*/
|
|
277
|
+
export const readCrossChainQuorums = async (
|
|
278
|
+
apiProposals: ApiProposal[],
|
|
279
|
+
governanceEnvironment: Environment,
|
|
280
|
+
): Promise<Map<number, bigint>> => {
|
|
281
|
+
const otherChainIds = Array.from(
|
|
282
|
+
new Set(
|
|
283
|
+
apiProposals
|
|
284
|
+
.map((p) => p.chainId)
|
|
285
|
+
.filter((c) => c !== governanceEnvironment.chainId),
|
|
286
|
+
),
|
|
287
|
+
);
|
|
288
|
+
const quorums = new Map<number, bigint>();
|
|
289
|
+
await Promise.all(
|
|
290
|
+
otherChainIds.map(async (chainId) => {
|
|
291
|
+
const env = (Object.values(publicEnvironments) as Environment[]).find(
|
|
292
|
+
(e) => e.chainId === chainId,
|
|
293
|
+
);
|
|
294
|
+
const mg = env?.contracts.multichainGovernor;
|
|
295
|
+
if (!mg) return;
|
|
296
|
+
try {
|
|
297
|
+
quorums.set(chainId, await mg.read.quorum());
|
|
298
|
+
} catch (error) {
|
|
299
|
+
console.warn(
|
|
300
|
+
`[readCrossChainQuorums] quorum read failed for chainId=${chainId}:`,
|
|
301
|
+
error,
|
|
302
|
+
);
|
|
303
|
+
governanceEnvironment.onError?.(error, {
|
|
304
|
+
source: "governance-cross-chain-quorum",
|
|
305
|
+
chainId,
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
}),
|
|
309
|
+
);
|
|
310
|
+
return quorums;
|
|
311
|
+
};
|
|
312
|
+
|
|
265
313
|
/**
|
|
266
314
|
* Fetches on-chain data for multiple proposals
|
|
267
315
|
*/
|
|
268
316
|
export const getProposalsOnChainData = async (
|
|
269
317
|
apiProposals: ApiProposal[],
|
|
270
318
|
governanceEnvironment: Environment,
|
|
319
|
+
options?: { crossChainQuorums?: Map<number, bigint> },
|
|
271
320
|
): Promise<ProposalOnChainData[]> => {
|
|
272
321
|
let quorum = 0n;
|
|
273
322
|
|
|
@@ -289,9 +338,12 @@ export const getProposalsOnChainData = async (
|
|
|
289
338
|
const onChainDataList = await Promise.all(
|
|
290
339
|
apiProposals.map(async (p) => {
|
|
291
340
|
// Proposals from a different chain than the governance env (e.g. chainId=1
|
|
292
|
-
// Ethereum proposals fetched through the Moonbeam env) can't
|
|
293
|
-
// this env's contracts — derive state from API events here
|
|
294
|
-
// never see a misleading `state: 0` default for finalized
|
|
341
|
+
// Ethereum proposals fetched through the Moonbeam env) can't have their
|
|
342
|
+
// state read from this env's contracts — derive state from API events here
|
|
343
|
+
// so callers never see a misleading `state: 0` default for finalized
|
|
344
|
+
// proposals. Quorum, however, comes from a per-chain map populated by the
|
|
345
|
+
// caller via `readCrossChainQuorums` (defaulting to 0n when the caller
|
|
346
|
+
// didn't pre-fetch, e.g. in unit tests).
|
|
295
347
|
if (p.chainId !== governanceEnvironment.chainId) {
|
|
296
348
|
const formatted = formatApiProposalData(p);
|
|
297
349
|
return {
|
|
@@ -299,7 +351,7 @@ export const getProposalsOnChainData = async (
|
|
|
299
351
|
proposalData: null,
|
|
300
352
|
eta: 0,
|
|
301
353
|
votesCollected: false,
|
|
302
|
-
quorum: 0n,
|
|
354
|
+
quorum: options?.crossChainQuorums?.get(p.chainId) ?? 0n,
|
|
303
355
|
};
|
|
304
356
|
}
|
|
305
357
|
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
fetchProposal,
|
|
11
11
|
isNotFoundError,
|
|
12
12
|
} from "../governor-api-client.js";
|
|
13
|
+
import { resolveIpfsDescriptions } from "../ipfs.js";
|
|
13
14
|
import {
|
|
14
15
|
appendProposalExtendedData,
|
|
15
16
|
formatApiProposalData,
|
|
@@ -18,6 +19,7 @@ import {
|
|
|
18
19
|
getProposalData,
|
|
19
20
|
getProposalsOnChainData,
|
|
20
21
|
isMultichainProposal,
|
|
22
|
+
readCrossChainQuorums,
|
|
21
23
|
} from "./common.js";
|
|
22
24
|
|
|
23
25
|
export type GetProposalParameters<
|
|
@@ -91,10 +93,16 @@ async function getMoonbeamProposal(
|
|
|
91
93
|
return undefined;
|
|
92
94
|
}
|
|
93
95
|
|
|
96
|
+
const [, crossChainQuorums] = await Promise.all([
|
|
97
|
+
resolveIpfsDescriptions([apiProposal], governanceEnvironment),
|
|
98
|
+
readCrossChainQuorums([apiProposal], governanceEnvironment),
|
|
99
|
+
]);
|
|
100
|
+
|
|
94
101
|
const formattedData = formatApiProposalData(apiProposal);
|
|
95
102
|
const onChainDataList = await getProposalsOnChainData(
|
|
96
103
|
[apiProposal],
|
|
97
104
|
governanceEnvironment,
|
|
105
|
+
{ crossChainQuorums },
|
|
98
106
|
);
|
|
99
107
|
const onChainData = onChainDataList[0]!;
|
|
100
108
|
const isMultichain = isMultichainProposal(apiProposal.targets);
|
|
@@ -6,6 +6,7 @@ import type { Chain, Environment } from "../../../environments/index.js";
|
|
|
6
6
|
import * as logger from "../../../logger/console.js";
|
|
7
7
|
import { type Proposal, ProposalState } from "../../../types/proposal.js";
|
|
8
8
|
import { type ApiProposal, fetchAllProposals } from "../governor-api-client.js";
|
|
9
|
+
import { resolveIpfsDescriptions } from "../ipfs.js";
|
|
9
10
|
import {
|
|
10
11
|
appendProposalExtendedData,
|
|
11
12
|
formatApiProposalData,
|
|
@@ -14,6 +15,7 @@ import {
|
|
|
14
15
|
getProposalData,
|
|
15
16
|
getProposalsOnChainData,
|
|
16
17
|
isMultichainProposal,
|
|
18
|
+
readCrossChainQuorums,
|
|
17
19
|
} from "./common.js";
|
|
18
20
|
|
|
19
21
|
export type GetProposalsParameters<
|
|
@@ -93,19 +95,31 @@ async function getMoonbeamProposals(
|
|
|
93
95
|
const chainsAttempted: ReadonlyArray<1 | 1284> = [1, 1284];
|
|
94
96
|
const apiProposals: ApiProposal[] = [];
|
|
95
97
|
results.forEach((result, index) => {
|
|
98
|
+
const chainId = chainsAttempted[index];
|
|
96
99
|
if (result.status === "fulfilled") {
|
|
97
100
|
apiProposals.push(...result.value);
|
|
98
|
-
} else {
|
|
101
|
+
} else if (chainId !== undefined) {
|
|
99
102
|
console.warn(
|
|
100
|
-
`[getProposals] Failed to fetch proposals for chainId=${
|
|
103
|
+
`[getProposals] Failed to fetch proposals for chainId=${chainId}; continuing with remaining chains.`,
|
|
101
104
|
result.reason,
|
|
102
105
|
);
|
|
106
|
+
governanceEnvironment.onError?.(result.reason, {
|
|
107
|
+
source: "governance-proposals",
|
|
108
|
+
chainId,
|
|
109
|
+
});
|
|
103
110
|
}
|
|
104
111
|
});
|
|
105
112
|
|
|
113
|
+
// IPFS resolution and cross-chain quorum reads are independent — run them in
|
|
114
|
+
// parallel to save one network round-trip on the proposal list path.
|
|
115
|
+
const [, crossChainQuorums] = await Promise.all([
|
|
116
|
+
resolveIpfsDescriptions(apiProposals, governanceEnvironment),
|
|
117
|
+
readCrossChainQuorums(apiProposals, governanceEnvironment),
|
|
118
|
+
]);
|
|
106
119
|
const onChainDataList = await getProposalsOnChainData(
|
|
107
120
|
apiProposals,
|
|
108
121
|
governanceEnvironment,
|
|
122
|
+
{ crossChainQuorums },
|
|
109
123
|
);
|
|
110
124
|
|
|
111
125
|
const proposals: Proposal[] = apiProposals.map((apiProposal, index) => {
|
|
@@ -4,7 +4,9 @@ import { tokens } from "./tokens.js";
|
|
|
4
4
|
export const contracts = createContractsConfig({
|
|
5
5
|
tokens,
|
|
6
6
|
contracts: {
|
|
7
|
-
|
|
7
|
+
stakingToken: "stkWELL",
|
|
8
8
|
governanceToken: "WELL",
|
|
9
|
+
views: "0xA061Ed814bBd1b03e8df0B7AbEbc40f4A6feb895",
|
|
10
|
+
multichainGovernor: "0x8769B70ac7c93AF0e75de0D69877709B66d75838",
|
|
9
11
|
},
|
|
10
12
|
});
|
package/errors/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '0.
|
|
1
|
+
export const version = '0.16.0'
|