@agoric/inter-protocol 0.13.3 → 0.13.4-dev-800c2bb.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/README.md +26 -20
- package/bundles/bundle-auctioneer-js-meta.json +722 -0
- package/bundles/bundle-auctioneer.js +1 -0
- package/bundles/bundle-econCommitteeCharter-js-meta.json +514 -0
- package/bundles/bundle-econCommitteeCharter.js +1 -0
- package/bundles/bundle-feeDistributor-js-meta.json +458 -0
- package/bundles/bundle-feeDistributor.js +1 -1
- package/bundles/bundle-fluxAggregatorKit-js-meta.json +674 -0
- package/bundles/bundle-fluxAggregatorKit.js +1 -0
- package/bundles/bundle-psm-js-meta.json +666 -0
- package/bundles/bundle-psm.js +1 -1
- package/bundles/bundle-reserve-js-meta.json +662 -0
- package/bundles/bundle-reserve.js +1 -1
- package/bundles/bundle-scaledPriceAuthority-js-meta.json +542 -0
- package/bundles/bundle-scaledPriceAuthority.js +1 -1
- package/bundles/bundle-vaultFactory-js-meta.json +786 -0
- package/bundles/bundle-vaultFactory.js +1 -1
- package/exported.js +0 -2
- package/package.json +34 -31
- package/scripts/add-collateral-core.js +14 -4
- package/scripts/build-bundles.js +9 -2
- package/scripts/deploy-contracts.js +1 -4
- package/scripts/init-core.js +20 -38
- package/scripts/invite-committee-core.js +1 -1
- package/scripts/manual-price-feed.js +2 -2
- package/scripts/price-feed-core.js +7 -6
- package/scripts/start-local-chain.sh +84 -0
- package/src/auction/auctionBook.js +755 -0
- package/src/auction/auctioneer.js +720 -0
- package/src/auction/offerBook.js +221 -0
- package/src/auction/params.js +174 -0
- package/src/auction/scheduleMath.js +167 -0
- package/src/auction/scheduler.js +370 -0
- package/src/auction/sortedOffers.js +136 -0
- package/src/auction/util.js +55 -0
- package/src/clientSupport.js +324 -0
- package/src/collectFees.js +8 -14
- package/src/contractSupport.js +24 -68
- package/src/econCommitteeCharter.js +161 -77
- package/src/feeDistributor.js +60 -20
- package/src/index.js +2 -0
- package/src/interest-math.js +1 -4
- package/src/interest.js +20 -13
- package/src/price/README.md +57 -0
- package/src/price/fluxAggregatorContract.js +190 -0
- package/src/price/fluxAggregatorKit.js +375 -0
- package/src/price/priceOracleKit.js +127 -0
- package/src/price/roundsManager.js +726 -0
- package/src/proposals/addAssetToVault.js +89 -94
- package/src/proposals/committee-proposal.js +141 -40
- package/src/proposals/core-proposal.js +100 -167
- package/src/proposals/econ-behaviors.js +320 -564
- package/src/proposals/price-feed-proposal.js +175 -78
- package/src/proposals/startEconCommittee.js +25 -12
- package/src/proposals/startPSM.js +231 -211
- package/src/proposals/utils.js +31 -17
- package/src/psm/README.md +71 -0
- package/src/psm/psm.js +272 -160
- package/src/psm/types.js +2 -0
- package/src/reserve/assetReserve.js +56 -413
- package/src/reserve/assetReserveKit.js +303 -0
- package/src/reserve/doc.md +1 -3
- package/src/reserve/params.js +2 -5
- package/src/typeGuards.js +13 -0
- package/src/vaultFactory/Liquidation.md +100 -0
- package/src/vaultFactory/burn.js +2 -1
- package/src/vaultFactory/liquidation.js +270 -108
- package/src/vaultFactory/math.js +95 -0
- package/src/vaultFactory/orderedVaultStore.js +0 -1
- package/src/vaultFactory/params.js +133 -112
- package/src/vaultFactory/prioritizedVaults.js +36 -79
- package/src/vaultFactory/storeUtils.js +67 -9
- package/src/vaultFactory/type-imports.js +2 -0
- package/src/vaultFactory/types.js +22 -26
- package/src/vaultFactory/vault.js +772 -709
- package/src/vaultFactory/vaultDirector.js +480 -483
- package/src/vaultFactory/vaultFactory.js +99 -60
- package/src/vaultFactory/vaultHolder.js +121 -95
- package/src/vaultFactory/vaultKit.js +39 -31
- package/src/vaultFactory/vaultManager.js +1249 -868
- package/bundles/bundle-amm-meta.js +0 -618
- package/bundles/bundle-amm.js +0 -1
- package/bundles/bundle-feeDistributor-meta.js +0 -346
- package/bundles/bundle-interchainPool-meta.js +0 -534
- package/bundles/bundle-interchainPool.js +0 -1
- package/bundles/bundle-liquidateIncrementally-meta.js +0 -442
- package/bundles/bundle-liquidateIncrementally.js +0 -1
- package/bundles/bundle-liquidateMinimum-meta.js +0 -442
- package/bundles/bundle-liquidateMinimum.js +0 -1
- package/bundles/bundle-psm-meta.js +0 -538
- package/bundles/bundle-psmCharter-meta.js +0 -418
- package/bundles/bundle-psmCharter.js +0 -1
- package/bundles/bundle-reserve-meta.js +0 -542
- package/bundles/bundle-scaledPriceAuthority-meta.js +0 -442
- package/bundles/bundle-stakeFactory-meta.js +0 -574
- package/bundles/bundle-stakeFactory.js +0 -1
- package/bundles/bundle-vaultFactory-meta.js +0 -598
- package/scripts/add-initial-liquidity.js +0 -180
- package/src/collect.js +0 -13
- package/src/interchainPool.js +0 -135
- package/src/makeTracer.js +0 -36
- package/src/my-lien.js +0 -85
- package/src/proposals/demoIssuers.js +0 -685
- package/src/proposals/sim-behaviors.js +0 -40
- package/src/psm/psmCharter.js +0 -139
- package/src/stakeFactory/README.md +0 -62
- package/src/stakeFactory/attestation.js +0 -267
- package/src/stakeFactory/attestationTool.js +0 -66
- package/src/stakeFactory/constants.js +0 -16
- package/src/stakeFactory/params.js +0 -31
- package/src/stakeFactory/stakeFactory.js +0 -236
- package/src/stakeFactory/stakeFactoryKit.js +0 -455
- package/src/stakeFactory/stakeFactoryManager.js +0 -296
- package/src/stakeFactory/types.js +0 -42
- package/src/vaultFactory/liquidateIncrementally.js +0 -350
- package/src/vaultFactory/liquidateMinimum.js +0 -100
- package/src/vpool-xyk-amm/AttackersGuide.md +0 -89
- package/src/vpool-xyk-amm/addLiquidity.js +0 -222
- package/src/vpool-xyk-amm/addPool.js +0 -197
- package/src/vpool-xyk-amm/constantProduct/AMM-Trade.jpeg +0 -0
- package/src/vpool-xyk-amm/constantProduct/README.md +0 -204
- package/src/vpool-xyk-amm/constantProduct/calcFees.js +0 -99
- package/src/vpool-xyk-amm/constantProduct/calcSwapPrices.js +0 -85
- package/src/vpool-xyk-amm/constantProduct/core.js +0 -153
- package/src/vpool-xyk-amm/constantProduct/defaults.js +0 -5
- package/src/vpool-xyk-amm/constantProduct/getXY.js +0 -52
- package/src/vpool-xyk-amm/constantProduct/internal-types.js +0 -116
- package/src/vpool-xyk-amm/constantProduct/invariants.js +0 -43
- package/src/vpool-xyk-amm/constantProduct/swap.js +0 -272
- package/src/vpool-xyk-amm/constantProduct/types.js +0 -32
- package/src/vpool-xyk-amm/doublePool.js +0 -194
- package/src/vpool-xyk-amm/estimate.js +0 -155
- package/src/vpool-xyk-amm/multipoolMarketMaker.js +0 -520
- package/src/vpool-xyk-amm/params.js +0 -61
- package/src/vpool-xyk-amm/pool.js +0 -396
- package/src/vpool-xyk-amm/priceAuthority.js +0 -94
- package/src/vpool-xyk-amm/removeLiquidity.js +0 -31
- package/src/vpool-xyk-amm/singlePool.js +0 -73
- package/src/vpool-xyk-amm/swap.js +0 -69
- package/src/vpool-xyk-amm/types.js +0 -154
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// @
|
|
1
|
+
// @jessie-check
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* @typedef {import('./vault').VaultNotification} VaultNotification
|
|
@@ -8,7 +8,11 @@
|
|
|
8
8
|
* @typedef {import('./vaultManager').CollateralManager} CollateralManager
|
|
9
9
|
* @typedef {import('../reserve/assetReserve.js').AssetReserveLimitedCreatorFacet} AssetReserveCreatorFacet
|
|
10
10
|
* @typedef {import('../reserve/assetReserve.js').AssetReservePublicFacet} AssetReservePublicFacet
|
|
11
|
+
* @typedef {import('../auction/auctioneer.js').AuctioneerPublicFacet} AuctioneerPublicFacet
|
|
11
12
|
* @typedef {import('./vaultFactory.js').VaultFactoryContract['publicFacet']} VaultFactoryPublicFacet
|
|
13
|
+
*
|
|
14
|
+
* @typedef {import('@agoric/time/src/types').Timestamp} Timestamp
|
|
15
|
+
* @typedef {import('@agoric/time/src/types').RelativeTime} RelativeTime
|
|
12
16
|
*/
|
|
13
17
|
|
|
14
18
|
/**
|
|
@@ -31,10 +35,11 @@
|
|
|
31
35
|
* @property {Ratio} liquidationMargin - margin below which collateral will be
|
|
32
36
|
* liquidated to satisfy the debt.
|
|
33
37
|
* @property {Ratio} liquidationPenalty - penalty charged upon liquidation as proportion of debt
|
|
34
|
-
* @property {Ratio} interestRate - annual interest rate charged on
|
|
35
|
-
* @property {Ratio}
|
|
36
|
-
* or increasing a
|
|
38
|
+
* @property {Ratio} interestRate - annual interest rate charged on debt positions
|
|
39
|
+
* @property {Ratio} mintFee - The fee (in BasisPoints) charged when creating
|
|
40
|
+
* or increasing a debt position.
|
|
37
41
|
* @property {Amount<'nat'>} debtLimit
|
|
42
|
+
* @property {Ratio} [liquidationPadding] - vault must maintain this in order to remove collateral or add debt
|
|
38
43
|
*/
|
|
39
44
|
|
|
40
45
|
/**
|
|
@@ -48,24 +53,21 @@
|
|
|
48
53
|
/**
|
|
49
54
|
* @typedef {object} VaultFactoryCreatorFacet
|
|
50
55
|
* @property {AddVaultType} addVaultType
|
|
51
|
-
* @property {() => Promise<Array<Collateral>>} getCollaterals
|
|
52
56
|
* @property {() => Allocation} getRewardAllocation
|
|
53
|
-
* @property {() =>
|
|
54
|
-
* @property {() =>
|
|
55
|
-
* @property {() =>
|
|
57
|
+
* @property {() => Promise<Invitation<string, never>>} makeCollectFeesInvitation
|
|
58
|
+
* @property {() => import('@agoric/time/src/types').TimerWaker} makeLiquidationWaker
|
|
59
|
+
* @property {() => import('@agoric/time/src/types').TimerWaker} makePriceLockWaker
|
|
56
60
|
*/
|
|
57
61
|
|
|
58
62
|
/**
|
|
59
|
-
* @callback
|
|
60
|
-
*
|
|
63
|
+
* @callback MintAndTransfer
|
|
61
64
|
* Mint new debt `toMint` and transfer the `fee` portion to the vaultFactory's reward
|
|
62
65
|
* pool. Then reallocate over all the seat arguments and the rewardPoolSeat. Update
|
|
63
66
|
* the `totalDebt` if the reallocate succeeds.
|
|
64
|
-
*
|
|
65
|
-
* @param {Amount} toMint
|
|
66
|
-
* @param {Amount} fee
|
|
67
|
-
* @param {
|
|
68
|
-
* @param {...ZCFSeat} otherSeats
|
|
67
|
+
* @param {ZCFSeat} mintReceiver
|
|
68
|
+
* @param {Amount<'nat'>} toMint
|
|
69
|
+
* @param {Amount<'nat'>} fee
|
|
70
|
+
* @param {import('@agoric/zoe/src/contractSupport/atomicTransfer.js').TransferPart[]} transfers
|
|
69
71
|
* @returns {void}
|
|
70
72
|
*/
|
|
71
73
|
|
|
@@ -83,13 +85,13 @@
|
|
|
83
85
|
/**
|
|
84
86
|
* @typedef {object} GetVaultParams
|
|
85
87
|
* @property {() => Ratio} getLiquidationMargin
|
|
86
|
-
* @property {() => Ratio}
|
|
88
|
+
* @property {() => Ratio} getMintFee
|
|
87
89
|
* @property {() => Promise<PriceQuote>} getCollateralQuote
|
|
88
|
-
* @property {() => Ratio} getInterestRate - The annual interest rate on a
|
|
90
|
+
* @property {() => Ratio} getInterestRate - The annual interest rate on a debt position
|
|
89
91
|
* @property {() => RelativeTime} getChargingPeriod - The period (in seconds) at
|
|
90
|
-
* which interest is charged to the
|
|
92
|
+
* which interest is charged to the debt position.
|
|
91
93
|
* @property {() => RelativeTime} getRecordingPeriod - The period (in seconds)
|
|
92
|
-
* at which interest is recorded to the
|
|
94
|
+
* at which interest is recorded to the debt position.
|
|
93
95
|
*/
|
|
94
96
|
|
|
95
97
|
/**
|
|
@@ -97,17 +99,11 @@
|
|
|
97
99
|
*/
|
|
98
100
|
|
|
99
101
|
/**
|
|
100
|
-
* @typedef {object}
|
|
102
|
+
* @typedef {object} InterestTiming
|
|
101
103
|
* @property {RelativeTime} chargingPeriod in seconds
|
|
102
104
|
* @property {RelativeTime} recordingPeriod in seconds
|
|
103
105
|
*/
|
|
104
106
|
|
|
105
|
-
/**
|
|
106
|
-
* @typedef {object} AMMFees
|
|
107
|
-
* @property {bigint} poolFee
|
|
108
|
-
* @property {bigint} protocolFee
|
|
109
|
-
*/
|
|
110
|
-
|
|
111
107
|
/**
|
|
112
108
|
* @typedef {object} LiquidationStrategy
|
|
113
109
|
* @property {() => KeywordKeywordRecord} keywordMapping
|