@agoric/inter-protocol 0.16.2-upgrade-14-dev-0169c7e.0 → 0.16.2-upgrade-16-dev-8879538.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.
Files changed (175) hide show
  1. package/package.json +41 -34
  2. package/scripts/build-bundles.js +5 -21
  3. package/src/auction/auctionBook.d.ts +84 -0
  4. package/src/auction/auctionBook.d.ts.map +1 -0
  5. package/src/auction/auctionBook.js +135 -103
  6. package/src/auction/auctioneer.d.ts +83 -0
  7. package/src/auction/auctioneer.d.ts.map +1 -0
  8. package/src/auction/auctioneer.js +63 -49
  9. package/src/auction/offerBook.d.ts +45 -0
  10. package/src/auction/offerBook.d.ts.map +1 -0
  11. package/src/auction/offerBook.js +13 -12
  12. package/src/auction/params.d.ts +149 -0
  13. package/src/auction/params.d.ts.map +1 -0
  14. package/src/auction/params.js +10 -9
  15. package/src/auction/scheduleMath.d.ts +5 -0
  16. package/src/auction/scheduleMath.d.ts.map +1 -0
  17. package/src/auction/scheduleMath.js +17 -15
  18. package/src/auction/scheduler.d.ts +49 -0
  19. package/src/auction/scheduler.d.ts.map +1 -0
  20. package/src/auction/scheduler.js +51 -43
  21. package/src/auction/sortedOffers.d.ts +8 -0
  22. package/src/auction/sortedOffers.d.ts.map +1 -0
  23. package/src/auction/sortedOffers.js +9 -7
  24. package/src/auction/util.d.ts +32 -0
  25. package/src/auction/util.d.ts.map +1 -0
  26. package/src/auction/util.js +6 -4
  27. package/src/clientSupport.d.ts +167 -0
  28. package/src/clientSupport.d.ts.map +1 -0
  29. package/src/clientSupport.js +97 -40
  30. package/src/collectFees.d.ts +2 -0
  31. package/src/collectFees.d.ts.map +1 -0
  32. package/src/contractSupport.d.ts +28 -0
  33. package/src/contractSupport.d.ts.map +1 -0
  34. package/src/contractSupport.js +14 -12
  35. package/src/econCommitteeCharter.d.ts +39 -0
  36. package/src/econCommitteeCharter.d.ts.map +1 -0
  37. package/src/econCommitteeCharter.js +21 -20
  38. package/src/feeDistributor.d.ts +224 -0
  39. package/src/feeDistributor.d.ts.map +1 -0
  40. package/src/feeDistributor.js +37 -33
  41. package/src/index.d.ts +2 -0
  42. package/src/index.d.ts.map +1 -0
  43. package/src/index.js +1 -0
  44. package/src/interest-math.d.ts +3 -0
  45. package/src/interest-math.d.ts.map +1 -0
  46. package/src/interest.d.ts +28 -0
  47. package/src/interest.d.ts.map +1 -0
  48. package/src/interest.js +21 -16
  49. package/src/price/README.md +13 -0
  50. package/src/price/fluxAggregatorContract.d.ts +70 -0
  51. package/src/price/fluxAggregatorContract.d.ts.map +1 -0
  52. package/src/price/fluxAggregatorContract.js +62 -55
  53. package/src/price/fluxAggregatorKit.d.ts +103 -0
  54. package/src/price/fluxAggregatorKit.d.ts.map +1 -0
  55. package/src/price/fluxAggregatorKit.js +50 -37
  56. package/src/price/priceOracleKit.d.ts +38 -0
  57. package/src/price/priceOracleKit.d.ts.map +1 -0
  58. package/src/price/priceOracleKit.js +11 -13
  59. package/src/price/roundsManager.d.ts +238 -0
  60. package/src/price/roundsManager.d.ts.map +1 -0
  61. package/src/price/roundsManager.js +77 -82
  62. package/src/proposals/README.md +2 -3
  63. package/src/proposals/add-auction.d.ts +69 -0
  64. package/src/proposals/add-auction.d.ts.map +1 -0
  65. package/src/proposals/add-auction.js +181 -0
  66. package/src/proposals/addAssetToVault.d.ts +160 -0
  67. package/src/proposals/addAssetToVault.d.ts.map +1 -0
  68. package/src/proposals/addAssetToVault.js +172 -38
  69. package/src/proposals/committee-proposal.d.ts +113 -0
  70. package/src/proposals/committee-proposal.d.ts.map +1 -0
  71. package/src/proposals/committee-proposal.js +25 -31
  72. package/src/proposals/core-proposal.d.ts +149 -0
  73. package/src/proposals/core-proposal.d.ts.map +1 -0
  74. package/src/proposals/core-proposal.js +9 -11
  75. package/src/proposals/econ-behaviors.d.ts +1169 -0
  76. package/src/proposals/econ-behaviors.d.ts.map +1 -0
  77. package/src/proposals/econ-behaviors.js +66 -45
  78. package/src/proposals/price-feed-proposal.d.ts +84 -0
  79. package/src/proposals/price-feed-proposal.d.ts.map +1 -0
  80. package/src/proposals/price-feed-proposal.js +108 -51
  81. package/src/proposals/startEconCommittee.d.ts +34 -0
  82. package/src/proposals/startEconCommittee.d.ts.map +1 -0
  83. package/src/proposals/startEconCommittee.js +2 -2
  84. package/src/proposals/startPSM.d.ts +59 -0
  85. package/src/proposals/startPSM.d.ts.map +1 -0
  86. package/src/proposals/startPSM.js +38 -27
  87. package/src/proposals/upgrade-scaledPriceAuthorities.d.ts +24 -0
  88. package/src/proposals/upgrade-scaledPriceAuthorities.d.ts.map +1 -0
  89. package/src/proposals/upgrade-scaledPriceAuthorities.js +78 -0
  90. package/src/proposals/upgrade-vaults.d.ts +35 -0
  91. package/src/proposals/upgrade-vaults.d.ts.map +1 -0
  92. package/src/proposals/upgrade-vaults.js +202 -0
  93. package/src/proposals/utils.d.ts +17 -0
  94. package/src/proposals/utils.d.ts.map +1 -0
  95. package/src/proposals/utils.js +34 -7
  96. package/src/provisionPool.d.ts +167 -0
  97. package/src/provisionPool.d.ts.map +1 -0
  98. package/src/provisionPool.js +122 -0
  99. package/src/provisionPoolKit.d.ts +770 -0
  100. package/src/provisionPoolKit.d.ts.map +1 -0
  101. package/src/provisionPoolKit.js +463 -0
  102. package/src/psm/psm.d.ts +122 -0
  103. package/src/psm/psm.d.ts.map +1 -0
  104. package/src/psm/psm.js +73 -69
  105. package/src/psm/types-ambient.d.ts +2 -0
  106. package/src/psm/types-ambient.d.ts.map +1 -0
  107. package/src/psm/types-ambient.js +3 -0
  108. package/src/reserve/assetReserve.d.ts +47 -0
  109. package/src/reserve/assetReserve.d.ts.map +1 -0
  110. package/src/reserve/assetReserve.js +28 -19
  111. package/src/reserve/assetReserveKit.d.ts +74 -0
  112. package/src/reserve/assetReserveKit.d.ts.map +1 -0
  113. package/src/reserve/assetReserveKit.js +18 -24
  114. package/src/reserve/params.d.ts +10 -0
  115. package/src/reserve/params.d.ts.map +1 -0
  116. package/src/tokens.d.ts +3 -0
  117. package/src/tokens.d.ts.map +1 -0
  118. package/src/tokens.js +5 -0
  119. package/src/vaultFactory/burn.d.ts +2 -0
  120. package/src/vaultFactory/burn.d.ts.map +1 -0
  121. package/src/vaultFactory/burn.js +1 -1
  122. package/src/vaultFactory/liquidation.d.ts +163 -0
  123. package/src/vaultFactory/liquidation.d.ts.map +1 -0
  124. package/src/vaultFactory/liquidation.js +36 -22
  125. package/src/vaultFactory/math.d.ts +11 -0
  126. package/src/vaultFactory/math.d.ts.map +1 -0
  127. package/src/vaultFactory/math.js +10 -9
  128. package/src/vaultFactory/orderedVaultStore.d.ts +360 -0
  129. package/src/vaultFactory/orderedVaultStore.d.ts.map +1 -0
  130. package/src/vaultFactory/orderedVaultStore.js +8 -11
  131. package/src/vaultFactory/params.d.ts +145 -0
  132. package/src/vaultFactory/params.d.ts.map +1 -0
  133. package/src/vaultFactory/params.js +52 -24
  134. package/src/vaultFactory/prioritizedVaults.d.ts +992 -0
  135. package/src/vaultFactory/prioritizedVaults.d.ts.map +1 -0
  136. package/src/vaultFactory/prioritizedVaults.js +4 -4
  137. package/src/vaultFactory/proceeds.d.ts +35 -0
  138. package/src/vaultFactory/proceeds.d.ts.map +1 -0
  139. package/src/vaultFactory/proceeds.js +26 -18
  140. package/src/vaultFactory/storeUtils.d.ts +25 -0
  141. package/src/vaultFactory/storeUtils.d.ts.map +1 -0
  142. package/src/vaultFactory/storeUtils.js +10 -12
  143. package/src/vaultFactory/types-ambient.d.ts +234 -0
  144. package/src/vaultFactory/types-ambient.d.ts.map +1 -0
  145. package/src/vaultFactory/{types.js → types-ambient.js} +42 -42
  146. package/src/vaultFactory/vault.d.ts +402 -0
  147. package/src/vaultFactory/vault.d.ts.map +1 -0
  148. package/src/vaultFactory/vault.js +99 -93
  149. package/src/vaultFactory/vaultDirector.d.ts +388 -0
  150. package/src/vaultFactory/vaultDirector.d.ts.map +1 -0
  151. package/src/vaultFactory/vaultDirector.js +61 -50
  152. package/src/vaultFactory/vaultFactory.d.ts +277 -0
  153. package/src/vaultFactory/vaultFactory.d.ts.map +1 -0
  154. package/src/vaultFactory/vaultFactory.js +49 -32
  155. package/src/vaultFactory/vaultHolder.d.ts +270 -0
  156. package/src/vaultFactory/vaultHolder.d.ts.map +1 -0
  157. package/src/vaultFactory/vaultHolder.js +10 -14
  158. package/src/vaultFactory/vaultKit.d.ts +102 -0
  159. package/src/vaultFactory/vaultKit.d.ts.map +1 -0
  160. package/src/vaultFactory/vaultKit.js +5 -4
  161. package/src/vaultFactory/vaultManager.d.ts +819 -0
  162. package/src/vaultFactory/vaultManager.d.ts.map +1 -0
  163. package/src/vaultFactory/vaultManager.js +248 -151
  164. package/CHANGELOG.md +0 -1066
  165. package/exported.js +0 -2
  166. package/scripts/add-collateral-core.js +0 -113
  167. package/scripts/deploy-contracts.js +0 -100
  168. package/scripts/init-core.js +0 -200
  169. package/scripts/invite-committee-core.js +0 -42
  170. package/scripts/manual-price-feed.js +0 -117
  171. package/scripts/price-feed-core.js +0 -104
  172. package/scripts/start-local-chain.sh +0 -84
  173. package/src/psm/types.js +0 -3
  174. package/src/typeGuards.js +0 -13
  175. package/src/vaultFactory/type-imports.js +0 -4
@@ -1,6 +1,6 @@
1
1
  // @jessie-check
2
2
 
3
- import './types.js';
3
+ /// <reference path="./types-ambient.js" />
4
4
 
5
5
  import {
6
6
  CONTRACT_ELECTORATE,
@@ -12,8 +12,11 @@ import { M, makeScalarMapStore } from '@agoric/store';
12
12
  import { TimeMath } from '@agoric/time';
13
13
  import { provideDurableMapStore } from '@agoric/vat-data';
14
14
  import { subtractRatios } from '@agoric/zoe/src/contractSupport/ratio.js';
15
+ import { makeTracer } from '@agoric/internal/src/index.js';
15
16
  import { amountPattern, ratioPattern } from '../contractSupport.js';
16
17
 
18
+ /** @import {PriceAuthority, PriceDescription, PriceQuote, PriceQuoteValue, PriceQuery,} from '@agoric/zoe/tools/types.js'; */
19
+
17
20
  export const CHARGING_PERIOD_KEY = 'ChargingPeriod';
18
21
  export const RECORDING_PERIOD_KEY = 'RecordingPeriod';
19
22
 
@@ -35,6 +38,8 @@ export const vaultDirectorParamTypes = {
35
38
  };
36
39
  harden(vaultDirectorParamTypes);
37
40
 
41
+ const trace = makeTracer('Vault Params');
42
+
38
43
  /**
39
44
  * @param {Amount<'set'>} electorateInvitationAmount
40
45
  * @param {Amount<'nat'>} minInitialDebt
@@ -75,7 +80,11 @@ const makeVaultDirectorParams = (
75
80
  };
76
81
  harden(makeVaultDirectorParams);
77
82
 
78
- /** @typedef {import('@agoric/governance/src/contractGovernance/typedParamManager').ParamTypesMapFromRecord<ReturnType<typeof makeVaultDirectorParams>>} VaultDirectorParams */
83
+ /**
84
+ * @typedef {import('@agoric/governance/src/contractGovernance/typedParamManager.js').ParamTypesMapFromRecord<
85
+ * ReturnType<typeof makeVaultDirectorParams>
86
+ * >} VaultDirectorParams
87
+ */
79
88
 
80
89
  /** @type {(liquidationMargin: Ratio) => Ratio} */
81
90
  const zeroRatio = liquidationMargin =>
@@ -122,20 +131,18 @@ export const vaultParamPattern = M.splitRecord(
122
131
 
123
132
  /**
124
133
  * @param {{
125
- * auctioneerPublicFacet: ERef<AuctioneerPublicFacet>,
126
- * electorateInvitationAmount: Amount<'set'>,
127
- * minInitialDebt: Amount<'nat'>,
128
- * bootstrapPaymentValue: bigint,
129
- * priceAuthority: ERef<PriceAuthority>,
130
- * timer: ERef<import('@agoric/time/src/types').TimerService>,
131
- * reservePublicFacet: AssetReservePublicFacet,
132
- * interestTiming: InterestTiming,
133
- * shortfallInvitationAmount: Amount<'set'>,
134
- * referencedUi?: string,
134
+ * electorateInvitationAmount: Amount<'set'>;
135
+ * minInitialDebt: Amount<'nat'>;
136
+ * bootstrapPaymentValue: bigint;
137
+ * priceAuthority: ERef<PriceAuthority>;
138
+ * timer: ERef<import('@agoric/time').TimerService>;
139
+ * reservePublicFacet: AssetReservePublicFacet;
140
+ * interestTiming: InterestTiming;
141
+ * shortfallInvitationAmount: Amount<'set'>;
142
+ * referencedUi?: string;
135
143
  * }} opts
136
144
  */
137
145
  export const makeGovernedTerms = ({
138
- auctioneerPublicFacet,
139
146
  bootstrapPaymentValue,
140
147
  electorateInvitationAmount,
141
148
  interestTiming,
@@ -147,7 +154,6 @@ export const makeGovernedTerms = ({
147
154
  referencedUi = 'NO REFERENCE',
148
155
  }) => {
149
156
  return harden({
150
- auctioneerPublicFacet,
151
157
  priceAuthority,
152
158
  reservePublicFacet,
153
159
  timerService: timer,
@@ -162,21 +168,34 @@ export const makeGovernedTerms = ({
162
168
  });
163
169
  };
164
170
  harden(makeGovernedTerms);
171
+
172
+ /** @typedef {VaultManagerParamValues & { brand: Brand }} VaultManagerParamOverrides */
173
+
165
174
  /**
166
- * Stop-gap which restores initial param values
167
- * UNTIL https://github.com/Agoric/agoric-sdk/issues/5200
175
+ * Stop-gap which restores initial param values UNTIL
176
+ * https://github.com/Agoric/agoric-sdk/issues/5200
168
177
  *
169
178
  * NB: changes from initial values will be lost upon restart
170
179
  *
171
180
  * @param {import('@agoric/vat-data').Baggage} baggage
172
181
  * @param {ERef<Marshaller>} marshaller
182
+ * @param {Record<string, VaultManagerParamOverrides>} managerParamOverrides
173
183
  */
174
- export const provideVaultParamManagers = (baggage, marshaller) => {
184
+ export const provideVaultParamManagers = (
185
+ baggage,
186
+ marshaller,
187
+ managerParamOverrides,
188
+ ) => {
175
189
  /** @type {MapStore<Brand, VaultParamManager>} */
176
190
  const managers = makeScalarMapStore();
177
191
 
178
192
  // the managers aren't durable but their arguments are
179
- /** @type {MapStore<Brand, {storageNode: StorageNode, initialParamValues: VaultManagerParamValues}>} */
193
+ /**
194
+ * @type {MapStore<
195
+ * Brand,
196
+ * { storageNode: StorageNode; initialParamValues: VaultManagerParamValues }
197
+ * >}
198
+ */
180
199
  const managerArgs = provideDurableMapStore(
181
200
  baggage,
182
201
  'vault param manager parts',
@@ -191,12 +210,23 @@ export const provideVaultParamManagers = (baggage, marshaller) => {
191
210
  return manager;
192
211
  };
193
212
 
194
- // restore from baggage
195
- [...managerArgs.entries()].map(([brand, args]) => makeManager(brand, args));
213
+ // restore from baggage, unless `managerParamOverrides` overrides.
214
+ for (const [brand, args] of managerArgs.entries()) {
215
+ const newInitial = managerParamOverrides
216
+ ? Object.values(managerParamOverrides).find(e => e.brand === brand)
217
+ : undefined;
218
+
219
+ if (newInitial) {
220
+ trace(`reviving params, override`, brand, newInitial);
221
+ makeManager(brand, { ...args, initialParamValues: newInitial });
222
+ } else {
223
+ trace(`reviving params, keeping`, brand, args.initialParamValues);
224
+ makeManager(brand, args);
225
+ }
226
+ }
196
227
 
197
228
  return {
198
229
  /**
199
- *
200
230
  * @param {Brand} brand
201
231
  * @param {StorageNode} storageNode
202
232
  * @param {VaultManagerParamValues} initialParamValues
@@ -206,9 +236,7 @@ export const provideVaultParamManagers = (baggage, marshaller) => {
206
236
  managerArgs.init(brand, args);
207
237
  return makeManager(brand, args);
208
238
  },
209
- /**
210
- * @param {Brand} brand
211
- */
239
+ /** @param {Brand} brand */
212
240
  get(brand) {
213
241
  return managers.get(brand);
214
242
  },