@gudman/backstop-sdk 0.1.0 → 0.1.1
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/README.md +27 -4
- package/dist/deployment.js +4 -4
- package/dist/deployment.js.map +1 -1
- package/dist/index.d.ts +39 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +113 -25
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,8 +4,6 @@ TypeScript helpers for Backstop's on-chain surfaces.
|
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
7
|
-
After the npm release:
|
|
8
|
-
|
|
9
7
|
```bash
|
|
10
8
|
npm install @gudman/backstop-sdk @mysten/sui
|
|
11
9
|
```
|
|
@@ -23,9 +21,11 @@ npm run build
|
|
|
23
21
|
- legacy testnet cover-pool builders, kept for lab/proof work only
|
|
24
22
|
- mainnet Pyth depeg readers, duration-aware premium quotes, expiry-release
|
|
25
23
|
builders, and transaction builders
|
|
24
|
+
- v3 pool-epoch builders (`record_pool_breach` / `record_pool_recovery`) for
|
|
25
|
+
batch claimability
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
Version `0.1.1` points at the v3 production pool recorded in `deployment.json`.
|
|
28
|
+
The RiskFeed/SRX/Predict surface is testnet-only today.
|
|
29
29
|
|
|
30
30
|
## Mainnet Depeg Examples
|
|
31
31
|
|
|
@@ -81,6 +81,29 @@ const tx = await buildDepegRecordBreachTx({
|
|
|
81
81
|
});
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
+
Record a pool-level epoch:
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
import {
|
|
88
|
+
PYTH_DEPEG_COVER_PKG,
|
|
89
|
+
PYTH_DEPEG_POOL,
|
|
90
|
+
buildDepegRecordPoolBreachTx,
|
|
91
|
+
buildDepegRecordPoolRecoveryTx,
|
|
92
|
+
} from "@gudman/backstop-sdk";
|
|
93
|
+
|
|
94
|
+
const armOrConfirm = await buildDepegRecordPoolBreachTx({
|
|
95
|
+
client,
|
|
96
|
+
pkg: PYTH_DEPEG_COVER_PKG,
|
|
97
|
+
poolId: PYTH_DEPEG_POOL,
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
const recover = await buildDepegRecordPoolRecoveryTx({
|
|
101
|
+
client,
|
|
102
|
+
pkg: PYTH_DEPEG_COVER_PKG,
|
|
103
|
+
poolId: PYTH_DEPEG_POOL,
|
|
104
|
+
});
|
|
105
|
+
```
|
|
106
|
+
|
|
84
107
|
Claim latched cover:
|
|
85
108
|
|
|
86
109
|
```ts
|
package/dist/deployment.js
CHANGED
|
@@ -17,10 +17,10 @@ export const WALRUS_AGGREGATOR = "https://aggregator.walrus-testnet.walrus.space
|
|
|
17
17
|
// the suiUSDe PriceInfoObject verified live 2026-06-12 (stable shared objects).
|
|
18
18
|
export const MAINNET = "mainnet";
|
|
19
19
|
export const HERMES = "https://hermes.pyth.network";
|
|
20
|
-
export const PYTH_DEPEG_COVER_PKG = hx("
|
|
21
|
-
export const PYTH_DEPEG_POOL = hx("
|
|
22
|
-
export const PYTH_LENDING_PKG = hx("
|
|
23
|
-
export const PYTH_LENDING_MARKET = hx("
|
|
20
|
+
export const PYTH_DEPEG_COVER_PKG = hx("51dd7287ac9e97147982023f5f2fa61b", "f5df2939d671216b19d142938f34ab05");
|
|
21
|
+
export const PYTH_DEPEG_POOL = hx("4ab0a68e6c299353811a54b660c7e1d8", "cda7645a5f58c77b8593ca4bc617dc53");
|
|
22
|
+
export const PYTH_LENDING_PKG = hx("33cd7e03003948545527609769b77541", "a9c0f3f8005894d8736fdf293cbf531a");
|
|
23
|
+
export const PYTH_LENDING_MARKET = hx("27d3f2753ab05170d0484a70114191f4", "fcdb35275db9b2ad9895db18cc92e712");
|
|
24
24
|
export const PYTH_STATE = hx("1f9310238ee9298fb703c3419030b35b", "22bb1cc37113e3bb5007c99aec79e5b8");
|
|
25
25
|
export const WORMHOLE_STATE = hx("aeab97f96cf9877fee2883315d459552", "b2b921edc16d7ceac6eab944dd88919c");
|
|
26
26
|
// suiUSDe/USD — the flagship depeg feed (Ethena-backed, live across Sui DeFi).
|
package/dist/deployment.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../src/deployment.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,+EAA+E;AAC/E,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,eAAe,CAAC;AACxC,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC;AAE3B,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAC7B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAC7B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAC/B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAC5B,yDAAyD,CAAC;AAE5D,qDAAqD;AACrD,kFAAkF;AAClF,mFAAmF;AACnF,gFAAgF;AAChF,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,MAAM,GAAG,6BAA6B,CAAC;AAEpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CACpC,
|
|
1
|
+
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../src/deployment.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,+EAA+E;AAC/E,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,eAAe,CAAC;AACxC,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC;AAE3B,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAC7B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAC7B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAC/B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAC5B,yDAAyD,CAAC;AAE5D,qDAAqD;AACrD,kFAAkF;AAClF,mFAAmF;AACnF,gFAAgF;AAChF,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,MAAM,GAAG,6BAA6B,CAAC;AAEpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CACpC,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAC/B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAChC,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CACnC,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAC1B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAC9B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;AAEF,+EAA+E;AAC/E,oFAAoF;AACpF,MAAM,CAAC,MAAM,eAAe,GAC1B,kEAAkE,CAAC;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CACpC,kCAAkC,EAClC,kCAAkC,CACnC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -79,6 +79,12 @@ export type DepegPoolState = {
|
|
|
79
79
|
expoNeg: boolean;
|
|
80
80
|
expoMag: number;
|
|
81
81
|
maxAgeSecs: number;
|
|
82
|
+
/** Maximum accepted Pyth confidence width in basis points. */
|
|
83
|
+
maxConfBps: number;
|
|
84
|
+
/** Required sustained-breach dwell time before claimability. */
|
|
85
|
+
minDwellSecs: number;
|
|
86
|
+
/** Delay before a newly bought policy can be armed. */
|
|
87
|
+
activationDelaySecs: number;
|
|
82
88
|
/** Base premium rate (bps) at 0% utilization; the charged rate is on a curve. */
|
|
83
89
|
premiumBps: number;
|
|
84
90
|
/** Additional premium rate (bps) at 100% utilization. */
|
|
@@ -99,7 +105,17 @@ export type DepegPoolState = {
|
|
|
99
105
|
paused: boolean;
|
|
100
106
|
/** Governance timelock (seconds) on parameter updates. */
|
|
101
107
|
timelockSecs: number;
|
|
108
|
+
/** Pool-level depeg epoch id (null on pre-epoch pools). */
|
|
109
|
+
epochId: number | null;
|
|
110
|
+
/** True after the first pool-level below-floor read starts dwell. */
|
|
111
|
+
epochArmed: boolean;
|
|
112
|
+
epochFirstBreachMs: number | null;
|
|
113
|
+
/** True once the pool-level dwell has confirmed. */
|
|
114
|
+
epochBreached: boolean;
|
|
115
|
+
epochConfirmedMs: number | null;
|
|
116
|
+
epochBreachPrice: bigint | null;
|
|
102
117
|
fundsMist: bigint;
|
|
118
|
+
totalShares: bigint;
|
|
103
119
|
totalCoverMist: bigint;
|
|
104
120
|
};
|
|
105
121
|
/**
|
|
@@ -148,6 +164,23 @@ export declare function buildDepegRecordBreachTx(p: {
|
|
|
148
164
|
policyId: string;
|
|
149
165
|
feedId?: string;
|
|
150
166
|
}): Promise<Transaction>;
|
|
167
|
+
/**
|
|
168
|
+
* Build a tx to record a pool-level breach observation. On epoch-enabled pools,
|
|
169
|
+
* one sustained pool epoch can make all eligible active policies claimable.
|
|
170
|
+
*/
|
|
171
|
+
export declare function buildDepegRecordPoolBreachTx(p: {
|
|
172
|
+
client: SuiClient;
|
|
173
|
+
pkg: string;
|
|
174
|
+
poolId: string;
|
|
175
|
+
feedId?: string;
|
|
176
|
+
}): Promise<Transaction>;
|
|
177
|
+
/** Build a tx to close an armed or confirmed pool epoch after Pyth recovery. */
|
|
178
|
+
export declare function buildDepegRecordPoolRecoveryTx(p: {
|
|
179
|
+
client: SuiClient;
|
|
180
|
+
pkg: string;
|
|
181
|
+
poolId: string;
|
|
182
|
+
feedId?: string;
|
|
183
|
+
}): Promise<Transaction>;
|
|
151
184
|
/** Build a tx to claim a previously-latched policy (no Pyth read needed). */
|
|
152
185
|
export declare function buildDepegClaimLatchedTx(p: {
|
|
153
186
|
pkg: string;
|
|
@@ -155,6 +188,12 @@ export declare function buildDepegClaimLatchedTx(p: {
|
|
|
155
188
|
policyId: string;
|
|
156
189
|
owner: string;
|
|
157
190
|
}): Transaction;
|
|
191
|
+
/** Read whether a policy is claimable because of a confirmed pool-level epoch. */
|
|
192
|
+
export declare function readDepegPolicyClaimableByPoolEpoch(client: SuiClient, p: {
|
|
193
|
+
pkg: string;
|
|
194
|
+
poolId: string;
|
|
195
|
+
policyId: string;
|
|
196
|
+
}): Promise<boolean>;
|
|
158
197
|
/** Build a tx to release an expired, unlatched policy object. */
|
|
159
198
|
export declare function buildDepegExpirePolicyTx(p: {
|
|
160
199
|
pkg: string;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAsBpD,cAAc,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -22,6 +22,34 @@ const ZERO = "0x" + "0".repeat(64);
|
|
|
22
22
|
const BPS = 10000n;
|
|
23
23
|
const PREMIUM_PERIOD_SECS = 2592000n;
|
|
24
24
|
const DAY_SECS = 86_400;
|
|
25
|
+
const isRecord = (v) => typeof v === "object" && v !== null;
|
|
26
|
+
const fieldsOf = (v) => {
|
|
27
|
+
if (!isRecord(v))
|
|
28
|
+
return null;
|
|
29
|
+
const fields = v.fields;
|
|
30
|
+
return isRecord(fields) ? fields : null;
|
|
31
|
+
};
|
|
32
|
+
const u64 = (v) => {
|
|
33
|
+
if (typeof v === "bigint")
|
|
34
|
+
return v;
|
|
35
|
+
if (typeof v === "number" || typeof v === "string")
|
|
36
|
+
return BigInt(v);
|
|
37
|
+
const fields = fieldsOf(v);
|
|
38
|
+
if (fields?.value !== undefined)
|
|
39
|
+
return u64(fields.value);
|
|
40
|
+
throw new Error("unexpected u64 field");
|
|
41
|
+
};
|
|
42
|
+
const optionalU64 = (v) => v === undefined ? null : u64(v);
|
|
43
|
+
const optionalU64Number = (v) => {
|
|
44
|
+
const parsed = optionalU64(v);
|
|
45
|
+
return parsed === null ? null : Number(parsed);
|
|
46
|
+
};
|
|
47
|
+
const feedIdHex = (v) => {
|
|
48
|
+
if (Array.isArray(v)) {
|
|
49
|
+
return v.map((n) => Number(n).toString(16).padStart(2, "0")).join("");
|
|
50
|
+
}
|
|
51
|
+
return String(v);
|
|
52
|
+
};
|
|
25
53
|
/** Read the latest SRX index for a market (default the BTC ~30-day benchmark). */
|
|
26
54
|
export async function readSrx(client, market = "BTC-30D") {
|
|
27
55
|
const idx = await client.getObject({
|
|
@@ -184,30 +212,36 @@ export async function readDepegPool(client, poolId) {
|
|
|
184
212
|
const f = o.data?.content?.fields;
|
|
185
213
|
if (!f)
|
|
186
214
|
throw new Error("depeg pool not found");
|
|
187
|
-
const feed = f.feed_id;
|
|
188
|
-
const feedIdHex = Array.isArray(feed)
|
|
189
|
-
? feed.map((n) => Number(n).toString(16).padStart(2, "0")).join("")
|
|
190
|
-
: String(feed);
|
|
191
215
|
return {
|
|
192
|
-
feedIdHex,
|
|
193
|
-
thresholdScaled:
|
|
216
|
+
feedIdHex: feedIdHex(f.feed_id),
|
|
217
|
+
thresholdScaled: u64(f.threshold),
|
|
194
218
|
expoNeg: Boolean(f.expo_neg),
|
|
195
|
-
expoMag: Number(f.expo_mag),
|
|
196
|
-
maxAgeSecs: Number(f.max_age_secs),
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
219
|
+
expoMag: Number(u64(f.expo_mag)),
|
|
220
|
+
maxAgeSecs: Number(u64(f.max_age_secs)),
|
|
221
|
+
maxConfBps: Number(u64(f.max_conf_bps)),
|
|
222
|
+
minDwellSecs: Number(u64(f.min_dwell_secs)),
|
|
223
|
+
activationDelaySecs: Number(u64(f.activation_delay_secs)),
|
|
224
|
+
premiumBps: Number(u64(f.premium_bps)),
|
|
225
|
+
surgePremiumBps: Number(u64(f.surge_premium_bps)),
|
|
226
|
+
maxCoverPerPolicyMist: u64(f.max_cover_per_policy),
|
|
200
227
|
maxPolicyDurationSecs: f.max_policy_duration_secs === undefined
|
|
201
228
|
? null
|
|
202
|
-
: Number(f.max_policy_duration_secs),
|
|
203
|
-
maxTotalCoverMist:
|
|
204
|
-
treasuryFeeBps: Number(f.treasury_fee_bps),
|
|
205
|
-
keeperBountyMist:
|
|
206
|
-
treasuryMist:
|
|
229
|
+
: Number(u64(f.max_policy_duration_secs)),
|
|
230
|
+
maxTotalCoverMist: u64(f.max_total_cover),
|
|
231
|
+
treasuryFeeBps: Number(u64(f.treasury_fee_bps)),
|
|
232
|
+
keeperBountyMist: u64(f.keeper_bounty),
|
|
233
|
+
treasuryMist: u64(f.treasury),
|
|
207
234
|
paused: Boolean(f.paused),
|
|
208
|
-
timelockSecs: Number(f.timelock_secs),
|
|
209
|
-
|
|
210
|
-
|
|
235
|
+
timelockSecs: Number(u64(f.timelock_secs)),
|
|
236
|
+
epochId: optionalU64Number(f.epoch_id),
|
|
237
|
+
epochArmed: Boolean(f.epoch_armed),
|
|
238
|
+
epochFirstBreachMs: optionalU64Number(f.epoch_first_breach_ms),
|
|
239
|
+
epochBreached: Boolean(f.epoch_breached),
|
|
240
|
+
epochConfirmedMs: optionalU64Number(f.epoch_confirmed_ms),
|
|
241
|
+
epochBreachPrice: optionalU64(f.epoch_breach_price),
|
|
242
|
+
fundsMist: u64(f.funds),
|
|
243
|
+
totalShares: u64(f.total_shares),
|
|
244
|
+
totalCoverMist: u64(f.total_cover),
|
|
211
245
|
};
|
|
212
246
|
}
|
|
213
247
|
/** Build a tx to buy SUI-collateralized depeg cover (premium in MIST). */
|
|
@@ -251,6 +285,15 @@ export function buildDepegWithdrawLpTx(p) {
|
|
|
251
285
|
tx.transferObjects([payout], p.owner);
|
|
252
286
|
return tx;
|
|
253
287
|
}
|
|
288
|
+
async function buildPythUpdateTx(client, feedId) {
|
|
289
|
+
const tx = new Transaction();
|
|
290
|
+
const updates = await new SuiPriceServiceConnection(HERMES).getPriceFeedsUpdateData([feedId]);
|
|
291
|
+
const pyth = new SuiPythClient(client, PYTH_STATE, WORMHOLE_STATE);
|
|
292
|
+
const [priceInfoObjectId] = await pyth.updatePriceFeeds(tx, updates, [
|
|
293
|
+
feedId,
|
|
294
|
+
]);
|
|
295
|
+
return { tx, priceInfoObjectId };
|
|
296
|
+
}
|
|
254
297
|
/**
|
|
255
298
|
* Build a tx to **record a sub-threshold observation** on a policy: refreshes Pyth
|
|
256
299
|
* and, if the feed is below its floor, advances the policy's dwell latch. Settlement
|
|
@@ -261,12 +304,7 @@ export function buildDepegWithdrawLpTx(p) {
|
|
|
261
304
|
*/
|
|
262
305
|
export async function buildDepegRecordBreachTx(p) {
|
|
263
306
|
const feedId = p.feedId ?? SUIUSDE_FEED_ID;
|
|
264
|
-
const tx =
|
|
265
|
-
const updates = await new SuiPriceServiceConnection(HERMES).getPriceFeedsUpdateData([feedId]);
|
|
266
|
-
const pyth = new SuiPythClient(p.client, PYTH_STATE, WORMHOLE_STATE);
|
|
267
|
-
const [priceInfoObjectId] = await pyth.updatePriceFeeds(tx, updates, [
|
|
268
|
-
feedId,
|
|
269
|
-
]);
|
|
307
|
+
const { tx, priceInfoObjectId } = await buildPythUpdateTx(p.client, feedId);
|
|
270
308
|
tx.moveCall({
|
|
271
309
|
target: `${p.pkg}::pyth_cover_pool::record_breach`,
|
|
272
310
|
typeArguments: [SUI_TYPE],
|
|
@@ -279,6 +317,39 @@ export async function buildDepegRecordBreachTx(p) {
|
|
|
279
317
|
});
|
|
280
318
|
return tx;
|
|
281
319
|
}
|
|
320
|
+
/**
|
|
321
|
+
* Build a tx to record a pool-level breach observation. On epoch-enabled pools,
|
|
322
|
+
* one sustained pool epoch can make all eligible active policies claimable.
|
|
323
|
+
*/
|
|
324
|
+
export async function buildDepegRecordPoolBreachTx(p) {
|
|
325
|
+
const feedId = p.feedId ?? SUIUSDE_FEED_ID;
|
|
326
|
+
const { tx, priceInfoObjectId } = await buildPythUpdateTx(p.client, feedId);
|
|
327
|
+
tx.moveCall({
|
|
328
|
+
target: `${p.pkg}::pyth_cover_pool::record_pool_breach`,
|
|
329
|
+
typeArguments: [SUI_TYPE],
|
|
330
|
+
arguments: [
|
|
331
|
+
tx.object(p.poolId),
|
|
332
|
+
tx.object(priceInfoObjectId),
|
|
333
|
+
tx.object(CLOCK),
|
|
334
|
+
],
|
|
335
|
+
});
|
|
336
|
+
return tx;
|
|
337
|
+
}
|
|
338
|
+
/** Build a tx to close an armed or confirmed pool epoch after Pyth recovery. */
|
|
339
|
+
export async function buildDepegRecordPoolRecoveryTx(p) {
|
|
340
|
+
const feedId = p.feedId ?? SUIUSDE_FEED_ID;
|
|
341
|
+
const { tx, priceInfoObjectId } = await buildPythUpdateTx(p.client, feedId);
|
|
342
|
+
tx.moveCall({
|
|
343
|
+
target: `${p.pkg}::pyth_cover_pool::record_pool_recovery`,
|
|
344
|
+
typeArguments: [SUI_TYPE],
|
|
345
|
+
arguments: [
|
|
346
|
+
tx.object(p.poolId),
|
|
347
|
+
tx.object(priceInfoObjectId),
|
|
348
|
+
tx.object(CLOCK),
|
|
349
|
+
],
|
|
350
|
+
});
|
|
351
|
+
return tx;
|
|
352
|
+
}
|
|
282
353
|
/** Build a tx to claim a previously-latched policy (no Pyth read needed). */
|
|
283
354
|
export function buildDepegClaimLatchedTx(p) {
|
|
284
355
|
const tx = new Transaction();
|
|
@@ -290,6 +361,23 @@ export function buildDepegClaimLatchedTx(p) {
|
|
|
290
361
|
tx.transferObjects([payout], p.owner);
|
|
291
362
|
return tx;
|
|
292
363
|
}
|
|
364
|
+
/** Read whether a policy is claimable because of a confirmed pool-level epoch. */
|
|
365
|
+
export async function readDepegPolicyClaimableByPoolEpoch(client, p) {
|
|
366
|
+
const tx = new Transaction();
|
|
367
|
+
tx.moveCall({
|
|
368
|
+
target: `${p.pkg}::pyth_cover_pool::policy_claimable_by_pool_epoch`,
|
|
369
|
+
typeArguments: [SUI_TYPE],
|
|
370
|
+
arguments: [tx.object(p.poolId), tx.object(p.policyId)],
|
|
371
|
+
});
|
|
372
|
+
const res = await client.devInspectTransactionBlock({
|
|
373
|
+
sender: ZERO,
|
|
374
|
+
transactionBlock: tx,
|
|
375
|
+
});
|
|
376
|
+
const returned = res.results?.[res.results.length - 1]?.returnValues;
|
|
377
|
+
if (!returned?.[0])
|
|
378
|
+
return false;
|
|
379
|
+
return bcs.bool().parse(Uint8Array.from(returned[0][0]));
|
|
380
|
+
}
|
|
293
381
|
/** Build a tx to release an expired, unlatched policy object. */
|
|
294
382
|
export function buildDepegExpirePolicyTx(p) {
|
|
295
383
|
const tx = new Transaction();
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|