@agoric/vats 0.15.2-dev-857e650.0 → 0.15.2-dev-284e2db.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/package.json +20 -20
- package/src/bridge.d.ts.map +1 -1
- package/src/bridge.js +23 -11
- package/src/centralSupply.d.ts.map +1 -1
- package/src/centralSupply.js +3 -3
- package/src/core/basic-behaviors.d.ts.map +1 -1
- package/src/core/basic-behaviors.js +55 -49
- package/src/core/boot-chain.js +3 -3
- package/src/core/boot-sim.js +3 -3
- package/src/core/boot-solo.js +4 -4
- package/src/core/chain-behaviors.d.ts.map +1 -1
- package/src/core/chain-behaviors.js +28 -23
- package/src/core/client-behaviors.d.ts.map +1 -1
- package/src/core/client-behaviors.js +5 -4
- package/src/core/demoIssuers.d.ts +17 -15
- package/src/core/demoIssuers.d.ts.map +1 -1
- package/src/core/demoIssuers.js +34 -34
- package/src/core/lib-boot.d.ts +9 -8
- package/src/core/lib-boot.d.ts.map +1 -1
- package/src/core/lib-boot.js +26 -15
- package/src/core/promise-space.d.ts.map +1 -1
- package/src/core/promise-space.js +14 -14
- package/src/core/startWalletFactory.d.ts +4 -1
- package/src/core/startWalletFactory.d.ts.map +1 -1
- package/src/core/startWalletFactory.js +25 -16
- package/src/core/types.d.ts +19 -278
- package/src/core/types.d.ts.map +1 -1
- package/src/core/types.js +385 -210
- package/src/core/utils.d.ts +4 -2
- package/src/core/utils.d.ts.map +1 -1
- package/src/core/utils.js +30 -28
- package/src/crc.d.ts +2 -6
- package/src/crc.d.ts.map +1 -1
- package/src/crc.js +5 -15
- package/src/ibc.d.ts +5 -5
- package/src/ibc.d.ts.map +1 -1
- package/src/ibc.js +22 -40
- package/src/lib-board.d.ts +48 -49
- package/src/lib-board.d.ts.map +1 -1
- package/src/lib-board.js +32 -39
- package/src/mintHolder.d.ts.map +1 -1
- package/src/mintHolder.js +5 -6
- package/src/nameHub.d.ts.map +1 -1
- package/src/nameHub.js +17 -7
- package/src/proposals/network-proposal.d.ts.map +1 -1
- package/src/proposals/network-proposal.js +13 -10
- package/src/proposals/restart-vats-proposal.d.ts +1 -1
- package/src/proposals/restart-vats-proposal.d.ts.map +1 -1
- package/src/proposals/restart-vats-proposal.js +3 -3
- package/src/provisionPool.d.ts.map +1 -1
- package/src/provisionPool.js +9 -10
- package/src/provisionPoolKit.d.ts +14 -27
- package/src/provisionPoolKit.d.ts.map +1 -1
- package/src/provisionPoolKit.js +26 -29
- package/src/repl.js +1 -1
- package/src/types.d.ts +28 -27
- package/src/types.d.ts.map +1 -1
- package/src/types.js +49 -46
- package/src/vat-bank.d.ts +49 -48
- package/src/vat-bank.d.ts.map +1 -1
- package/src/vat-bank.js +55 -50
- package/src/vat-mints.d.ts +10 -10
- package/src/vat-mints.d.ts.map +1 -1
- package/src/vat-mints.js +6 -6
- package/src/vat-provisioning.d.ts.map +1 -1
- package/src/vat-provisioning.js +11 -6
- package/src/virtual-purse.d.ts +6 -6
- package/src/virtual-purse.d.ts.map +1 -1
- package/src/virtual-purse.js +34 -33
- package/src/walletFlags.js +1 -2
- package/tools/authorityViz.d.ts.map +1 -1
- package/tools/authorityViz.js +34 -25
- package/tools/bank-utils.d.ts +1 -1
- package/tools/bank-utils.d.ts.map +1 -1
- package/tools/bank-utils.js +12 -5
- package/tools/board-utils.d.ts +1 -1
- package/tools/board-utils.d.ts.map +1 -1
- package/tools/board-utils.js +22 -14
- package/tools/boot-test-utils.d.ts.map +1 -1
- package/tools/boot-test-utils.js +7 -9
package/src/core/demoIssuers.js
CHANGED
|
@@ -25,7 +25,7 @@ export const DecimalPlaces = {
|
|
|
25
25
|
simolean: 0,
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
-
/** @type {Record<string, { proposedName: string
|
|
28
|
+
/** @type {Record<string, { proposedName: string; balance: bigint }>} */
|
|
29
29
|
const FaucetPurseDetail = {
|
|
30
30
|
[Stake.symbol]: {
|
|
31
31
|
proposedName: Stake.proposedName,
|
|
@@ -92,19 +92,21 @@ const defaultConfig = /** @type {const} */ ({
|
|
|
92
92
|
|
|
93
93
|
/**
|
|
94
94
|
* @typedef {readonly [bigint, bigint]} Rational
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
* }
|
|
95
|
+
* @type {Record<
|
|
96
|
+
* string,
|
|
97
|
+
* {
|
|
98
|
+
* config?: {
|
|
99
|
+
* collateralValue: bigint;
|
|
100
|
+
* initialMargin: Rational;
|
|
101
|
+
* liquidationMargin: Rational;
|
|
102
|
+
* liquidationPenalty: Rational;
|
|
103
|
+
* stabilityFee: Rational;
|
|
104
|
+
* mintFee: Rational;
|
|
105
|
+
* liquidationPadding?: Rational;
|
|
106
|
+
* };
|
|
107
|
+
* trades: { central: number; collateral: bigint }[];
|
|
108
|
+
* }
|
|
109
|
+
* >}
|
|
108
110
|
*/
|
|
109
111
|
export const AMMDemoState = {
|
|
110
112
|
// TODO: getRUN makes BLD obsolete here
|
|
@@ -182,9 +184,9 @@ const run2places = f =>
|
|
|
182
184
|
/**
|
|
183
185
|
* @param {bigint} value
|
|
184
186
|
* @param {{
|
|
185
|
-
* centralSupplyInstall: ERef<Installation
|
|
186
|
-
* feeMintAccess: ERef<FeeMintAccess
|
|
187
|
-
* zoe: ERef<ZoeService
|
|
187
|
+
* centralSupplyInstall: ERef<Installation>;
|
|
188
|
+
* feeMintAccess: ERef<FeeMintAccess>;
|
|
189
|
+
* zoe: ERef<ZoeService>;
|
|
188
190
|
* }} powers
|
|
189
191
|
* @returns {Promise<Payment<'nat'>>}
|
|
190
192
|
*/
|
|
@@ -216,17 +218,15 @@ const provideCoin = async (name, mints) => {
|
|
|
216
218
|
};
|
|
217
219
|
|
|
218
220
|
/**
|
|
219
|
-
* @param {
|
|
220
|
-
*
|
|
221
|
-
* } powers
|
|
221
|
+
* @param {BootstrapSpace & { consume: { loadVat: VatLoader<MintsVat> } }} powers
|
|
222
|
+
* TODO: sync this type with end-user docs?
|
|
222
223
|
*
|
|
223
|
-
* TODO: sync this type with end-user docs?
|
|
224
224
|
* @typedef {{
|
|
225
|
-
* issuer: ERef<Issuer
|
|
226
|
-
* issuerPetname: string
|
|
227
|
-
* payment: Payment
|
|
228
|
-
* brand: Brand
|
|
229
|
-
* pursePetname: string
|
|
225
|
+
* issuer: ERef<Issuer>;
|
|
226
|
+
* issuerPetname: string;
|
|
227
|
+
* payment: Payment;
|
|
228
|
+
* brand: Brand;
|
|
229
|
+
* pursePetname: string;
|
|
230
230
|
* }} UserPaymentRecord
|
|
231
231
|
*/
|
|
232
232
|
export const connectFaucet = async ({
|
|
@@ -334,7 +334,7 @@ export const connectFaucet = async ({
|
|
|
334
334
|
/**
|
|
335
335
|
* reap the spoils of our on-chain provisioning.
|
|
336
336
|
*
|
|
337
|
-
* @returns {Promise<
|
|
337
|
+
* @returns {Promise<UserPaymentRecord[]>}
|
|
338
338
|
*/
|
|
339
339
|
tapFaucet: async () => faucetPaymentInfo,
|
|
340
340
|
getFeePurse() {
|
|
@@ -389,7 +389,7 @@ export const ammPoolRunDeposits = issuers => {
|
|
|
389
389
|
/**
|
|
390
390
|
* @param {Payment} bootstrapPayment
|
|
391
391
|
* @param {Record<string, bigint>} balances
|
|
392
|
-
* @param {{ issuer: ERef<Issuer
|
|
392
|
+
* @param {{ issuer: ERef<Issuer>; brand: Brand }} central
|
|
393
393
|
*/
|
|
394
394
|
export const splitAllCentralPayments = async (
|
|
395
395
|
bootstrapPayment,
|
|
@@ -421,9 +421,9 @@ export const splitAllCentralPayments = async (
|
|
|
421
421
|
|
|
422
422
|
/**
|
|
423
423
|
* @param {string} issuerName
|
|
424
|
-
* @param {typeof AMMDemoState['ATOM']} record
|
|
425
|
-
* @param {Record<string, { issuer: ERef<Issuer
|
|
426
|
-
* @param {{ issuer: ERef<Issuer<'nat'
|
|
424
|
+
* @param {(typeof AMMDemoState)['ATOM']} record
|
|
425
|
+
* @param {Record<string, { issuer: ERef<Issuer>; brand: Brand }>} kits
|
|
426
|
+
* @param {{ issuer: ERef<Issuer<'nat'>>; brand: Brand<'nat'> }} central
|
|
427
427
|
*/
|
|
428
428
|
export const poolRates = (issuerName, record, kits, central) => {
|
|
429
429
|
/** @param {bigint} n */
|
|
@@ -462,7 +462,7 @@ export const poolRates = (issuerName, record, kits, central) => {
|
|
|
462
462
|
};
|
|
463
463
|
|
|
464
464
|
/**
|
|
465
|
-
* @param {
|
|
466
|
-
*
|
|
467
|
-
*
|
|
465
|
+
* @param {import('@agoric/inter-protocol/src/proposals/econ-behaviors.js').EconomyBootstrapPowers & {
|
|
466
|
+
* consume: { mints };
|
|
467
|
+
* }} powers
|
|
468
468
|
*/
|
package/src/core/lib-boot.d.ts
CHANGED
|
@@ -78,16 +78,17 @@ export type BootstrapManifestPermit = string | true | {
|
|
|
78
78
|
[key: string]: BootstrapManifestPermit | undefined;
|
|
79
79
|
};
|
|
80
80
|
/**
|
|
81
|
-
* A manifest is an object in which each key is the name of a function to run
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
81
|
+
* A manifest is an object in which each key is the name of a function to run at
|
|
82
|
+
* bootstrap and the corresponding value is a "permit" describing an attenuation
|
|
83
|
+
* of allPowers that should be provided as its first argument (cf.
|
|
84
|
+
* packages/vats/src/core/boot.js).
|
|
85
85
|
*
|
|
86
86
|
* A permit is either
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
87
|
+
*
|
|
88
|
+
* - `true` or a string (both meaning no attenuation, with a string serving as a
|
|
89
|
+
* grouping label for convenience and diagram generation), or
|
|
90
|
+
* - an object whose keys identify properties to preserve and whose values are
|
|
91
|
+
* themselves (recursive) permits.
|
|
91
92
|
*/
|
|
92
93
|
export type BootstrapManifest = Record<string, BootstrapManifestPermit>;
|
|
93
94
|
export type BootBehavior = (powers: any, config?: any) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib-boot.d.ts","sourceRoot":"","sources":["lib-boot.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lib-boot.d.ts","sourceRoot":"","sources":["lib-boot.js"],"names":[],"mappings":"AA4DO;OATC,MAAM;0BACQ,IAAI;kBAEf,OAAO,MAAM,EAAE,OAAO,CAAC,gBACvB,iBAAiB,aACjB,OAAO,MAAM,EAAE,YAAY,CAAC,WAC5B,WAAW;IAkHlB;;;;;OAKG;sBAFQ,YAAY,WACZ,WAAW,GAAG,YAAY;;;;;;;;;;;;;;;;;;;;;;;;IAuDrC;;;OAGG;;;IA9DH;;;;;OAKG;sBAFQ,YAAY,WACZ,WAAW,GAAG,YAAY;;;;;;;;;;;;;;;;;;;;;;;;IAuDrC;;;OAGG;;GAIN;;;;;;;;;;;;;;;;;gCA7MY,OAAO,MAAM,EAAE,uBAAuB,CAAC;oCAI9B,GAAG,WAAW,GAAG,KAAK,QAAQ,IAAI,CAAC;8BAE5C,OAAO,MAAM,EAAE,OAAO,CAAC;0BAEvB;IAAE,KAAK,EAAE,cAAc,YAAY,CAAC,CAAA;CAAE,GAAG,OACrD,MAAU,EACV,OAAW,MAAM,EAAE,GAAG,CAAC,CACpB"}
|
package/src/core/lib-boot.js
CHANGED
|
@@ -12,29 +12,36 @@ import { makePromiseSpace } from './promise-space.js';
|
|
|
12
12
|
const { Fail, quote: q } = assert;
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
-
* @typedef {
|
|
15
|
+
* @typedef {| true
|
|
16
|
+
* | string
|
|
17
|
+
* | { [key: string]: BootstrapManifestPermit | undefined }} BootstrapManifestPermit
|
|
16
18
|
*/
|
|
17
19
|
|
|
18
20
|
/**
|
|
19
|
-
* A manifest is an object in which each key is the name of a function to run
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
21
|
+
* A manifest is an object in which each key is the name of a function to run at
|
|
22
|
+
* bootstrap and the corresponding value is a "permit" describing an attenuation
|
|
23
|
+
* of allPowers that should be provided as its first argument (cf.
|
|
24
|
+
* packages/vats/src/core/boot.js).
|
|
23
25
|
*
|
|
24
26
|
* A permit is either
|
|
25
|
-
* - `true` or a string (both meaning no attenuation, with a string serving
|
|
26
|
-
* as a grouping label for convenience and diagram generation), or
|
|
27
|
-
* - an object whose keys identify properties to preserve and whose values
|
|
28
|
-
* are themselves (recursive) permits.
|
|
29
27
|
*
|
|
30
|
-
*
|
|
28
|
+
* - `true` or a string (both meaning no attenuation, with a string serving as a
|
|
29
|
+
* grouping label for convenience and diagram generation), or
|
|
30
|
+
* - an object whose keys identify properties to preserve and whose values are
|
|
31
|
+
* themselves (recursive) permits.
|
|
31
32
|
*
|
|
33
|
+
* @typedef {Record<string, BootstrapManifestPermit>} BootstrapManifest
|
|
32
34
|
*/
|
|
33
35
|
|
|
34
36
|
/**
|
|
35
|
-
* @typedef {(powers:
|
|
37
|
+
* @typedef {(powers: any, config?: any) => Promise<void>} BootBehavior
|
|
38
|
+
*
|
|
36
39
|
* @typedef {Record<string, unknown>} ModuleNamespace
|
|
37
|
-
*
|
|
40
|
+
*
|
|
41
|
+
* @typedef {{ utils: typeof import('./utils.js') } & Record<
|
|
42
|
+
* string,
|
|
43
|
+
* Record<string, any>
|
|
44
|
+
* >} BootModules
|
|
38
45
|
*/
|
|
39
46
|
|
|
40
47
|
/** @type {<X>(a: X[], b: X[]) => X[]} */
|
|
@@ -42,8 +49,8 @@ const setDiff = (a, b) => a.filter(x => !b.includes(x));
|
|
|
42
49
|
|
|
43
50
|
/**
|
|
44
51
|
* @param {VatPowers & {
|
|
45
|
-
* D: DProxy
|
|
46
|
-
* logger: (msg) => void
|
|
52
|
+
* D: DProxy;
|
|
53
|
+
* logger: (msg) => void;
|
|
47
54
|
* }} vatPowers
|
|
48
55
|
* @param {Record<string, unknown>} vatParameters
|
|
49
56
|
* @param {BootstrapManifest} bootManifest
|
|
@@ -147,7 +154,11 @@ export const makeBootstrap = (
|
|
|
147
154
|
},
|
|
148
155
|
],
|
|
149
156
|
};
|
|
150
|
-
/**
|
|
157
|
+
/**
|
|
158
|
+
* @type {{
|
|
159
|
+
* coreEvalBridgeHandler: Promise<import('../types.js').BridgeHandler>;
|
|
160
|
+
* }}
|
|
161
|
+
*/
|
|
151
162
|
// @ts-expect-error cast
|
|
152
163
|
const { coreEvalBridgeHandler } = consume;
|
|
153
164
|
await E(coreEvalBridgeHandler).fromBridge(coreEvalMessage);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise-space.d.ts","sourceRoot":"","sources":["promise-space.js"],"names":[],"mappings":"AAqBO,
|
|
1
|
+
{"version":3,"file":"promise-space.d.ts","sourceRoot":"","sources":["promise-space.js"],"names":[],"mappings":"AAqBO,kCAHI,OAAO,QAAQ,GAAG,GAChB,iBAAiB,CAS1B;AAUG,sCAJI,SAAS,MAAM,EAAE,QAAQ,CAAC;;;gBAExB,iBAAiB,CAkC7B;AAgBM;;;;;;;;;;;WALa,SAAS,MAAM,EAAE,GAAG,CAAC;4CA0GxC;;oBAnLoB,MAAM,KAAK,IAAI;qBACd,MAAM,SAAS,KAAK,OAAO,CAAC,KAAK,IAAI;qBACrC,MAAM,aAAa,IAAI,MAAM,CAAC,KAAK,IAAI;mBACzC,MAAM,KAAK,IAAI"}
|
|
@@ -6,17 +6,17 @@ import { makePromiseKit } from '@endo/promise-kit';
|
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @typedef {{
|
|
9
|
-
* onAddKey: (key: string) => void
|
|
10
|
-
* onResolve: (key: string, value: ERef<unknown>) => void
|
|
11
|
-
* onSettled: (key: string, remaining: Set<string>) => void
|
|
12
|
-
* onReset: (key: string) => void
|
|
9
|
+
* onAddKey: (key: string) => void;
|
|
10
|
+
* onResolve: (key: string, value: ERef<unknown>) => void;
|
|
11
|
+
* onSettled: (key: string, remaining: Set<string>) => void;
|
|
12
|
+
* onReset: (key: string) => void;
|
|
13
13
|
* }} PromiseSpaceHooks
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
const noop = harden(() => {});
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
|
-
* @param {
|
|
19
|
+
* @param {typeof console.log} log
|
|
20
20
|
* @returns {PromiseSpaceHooks}
|
|
21
21
|
*/
|
|
22
22
|
export const makeLogHooks = log =>
|
|
@@ -29,11 +29,11 @@ export const makeLogHooks = log =>
|
|
|
29
29
|
});
|
|
30
30
|
|
|
31
31
|
/**
|
|
32
|
-
* Note: caller is responsible for synchronization
|
|
33
|
-
*
|
|
32
|
+
* Note: caller is responsible for synchronization in case of onResolve() called
|
|
33
|
+
* with a promise.
|
|
34
34
|
*
|
|
35
35
|
* @param {MapStore<string, Passable>} store
|
|
36
|
-
* @param {
|
|
36
|
+
* @param {typeof console.log} [log]
|
|
37
37
|
* @returns {PromiseSpaceHooks}
|
|
38
38
|
*/
|
|
39
39
|
export const makeStoreHooks = (store, log = noop) => {
|
|
@@ -77,9 +77,11 @@ export const makeStoreHooks = (store, log = noop) => {
|
|
|
77
77
|
* Note: repeated resolve()s without an intervening reset() are noops.
|
|
78
78
|
*
|
|
79
79
|
* @template {Record<string, unknown>} [T=Record<string, unknown>]
|
|
80
|
-
* @param {{ log?: typeof console.log } & (
|
|
81
|
-
*
|
|
82
|
-
*
|
|
80
|
+
* @param {| ({ log?: typeof console.log } & (
|
|
81
|
+
* | { hooks?: PromiseSpaceHooks }
|
|
82
|
+
* | { store: MapStore<string, any> }
|
|
83
|
+
* ))
|
|
84
|
+
* | typeof console.log} [optsOrLog]
|
|
83
85
|
* @returns {PromiseSpaceOf<T>}
|
|
84
86
|
*/
|
|
85
87
|
export const makePromiseSpace = (optsOrLog = {}) => {
|
|
@@ -91,9 +93,7 @@ export const makePromiseSpace = (optsOrLog = {}) => {
|
|
|
91
93
|
: opts.hooks || makeLogHooks(log);
|
|
92
94
|
const { onAddKey, onSettled, onResolve, onReset } = hooks;
|
|
93
95
|
|
|
94
|
-
/**
|
|
95
|
-
* @typedef {{ pk: PromiseRecord<any>, isSettling: boolean }} PromiseState
|
|
96
|
-
*/
|
|
96
|
+
/** @typedef {{ pk: PromiseRecord<any>; isSettling: boolean }} PromiseState */
|
|
97
97
|
/** @type {Map<string, PromiseState>} */
|
|
98
98
|
const nameToState = new Map();
|
|
99
99
|
/** @type {Set<string>} */
|
|
@@ -133,7 +133,10 @@ export type WalletFactoryStartResult = Awaited<ReturnType<typeof startFactoryIns
|
|
|
133
133
|
import { Stable } from '@agoric/inter-protocol/src/tokens.js';
|
|
134
134
|
/**
|
|
135
135
|
* @param {ERef<ZoeService>} zoe
|
|
136
|
-
* @param {Installation<
|
|
136
|
+
* @param {Installation<
|
|
137
|
+
* import('@agoric/smart-wallet/src/walletFactory').prepare
|
|
138
|
+
* >} inst
|
|
139
|
+
*
|
|
137
140
|
* @typedef {Awaited<ReturnType<typeof startFactoryInstance>>} WalletFactoryStartResult
|
|
138
141
|
*/
|
|
139
142
|
declare function startFactoryInstance(zoe: ERef<ZoeService>, inst: Installation<(zcf: ZCF<import("@agoric/smart-wallet/src/walletFactory").SmartWalletContractTerms>, privateArgs: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startWalletFactory.d.ts","sourceRoot":"","sources":["startWalletFactory.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"startWalletFactory.d.ts","sourceRoot":"","sources":["startWalletFactory.js"],"names":[],"mappings":"AAkFO;;;;;;;;;;;;;;;;;mCAlB+B,OAAO,qCAAqC,EAAE,+BAA+B;oBAC5F;QACtB,YAAoB,EAAE,QACtB,WACA,oEAAyE,SAAS,CAAC,CACxE,CACF,CAAC,cAAc,CAAC,CAAC;QAC1B,UAAkB,EAAE,UAAU,CAAC;KACxB;yBACoB,OAAO,aAAa,EAAE,mBAAmB;kCAChC,OAAO,aAAa,EAAE,mBAAmB;;;;;8BAqL7E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCE;AAEK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWN;uCA9RY,QAAQ,WAAW,2BAA2B,CAAC,CAAC;uBAftC,sCAAsC;AAS7D;;;;;;;GAOG;AAEH,2CARW,KAAK,UAAU,CAAC,QAChB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAEP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKkE"}
|
|
@@ -17,7 +17,10 @@ const trace = makeTracer('StartWF');
|
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @param {ERef<ZoeService>} zoe
|
|
20
|
-
* @param {Installation<
|
|
20
|
+
* @param {Installation<
|
|
21
|
+
* import('@agoric/smart-wallet/src/walletFactory').prepare
|
|
22
|
+
* >} inst
|
|
23
|
+
*
|
|
21
24
|
* @typedef {Awaited<ReturnType<typeof startFactoryInstance>>} WalletFactoryStartResult
|
|
22
25
|
*/
|
|
23
26
|
// eslint-disable-next-line no-unused-vars
|
|
@@ -26,8 +29,8 @@ const startFactoryInstance = (zoe, inst) => E(zoe).startInstance(inst);
|
|
|
26
29
|
const StableUnit = BigInt(10 ** Stable.displayInfo.decimalPlaces);
|
|
27
30
|
|
|
28
31
|
/**
|
|
29
|
-
* Publish an arbitrary wallet state so that clients
|
|
30
|
-
*
|
|
32
|
+
* Publish an arbitrary wallet state so that clients can tell that a wallet has
|
|
33
|
+
* been provisioned.
|
|
31
34
|
*
|
|
32
35
|
* @param {string[]} oldAddresses
|
|
33
36
|
* @param {Marshaller} marshaller
|
|
@@ -53,22 +56,28 @@ const publishRevivableWalletState = async (
|
|
|
53
56
|
};
|
|
54
57
|
|
|
55
58
|
/**
|
|
56
|
-
* Register for PLEASE_PROVISION bridge messages and handle
|
|
57
|
-
*
|
|
59
|
+
* Register for PLEASE_PROVISION bridge messages and handle them by providing a
|
|
60
|
+
* smart wallet from the wallet factory.
|
|
58
61
|
*
|
|
59
|
-
* @param {BootstrapPowers &
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
62
|
+
* @param {BootstrapPowers &
|
|
63
|
+
* ChainStorageVatParams &
|
|
64
|
+
* PromiseSpaceOf<{
|
|
65
|
+
* economicCommitteeCreatorFacet: import('@agoric/governance/src/committee.js').CommitteeElectorateCreatorFacet;
|
|
66
|
+
* econCharterKit: {
|
|
67
|
+
* creatorFacet: Awaited<
|
|
68
|
+
* ReturnType<
|
|
69
|
+
* import('@agoric/inter-protocol/src/econCommitteeCharter.js')['prepare']
|
|
70
|
+
* >
|
|
71
|
+
* >['creatorFacet'];
|
|
72
|
+
* adminFacet: AdminFacet;
|
|
73
|
+
* };
|
|
74
|
+
* walletBridgeManager: import('../types.js').ScopedBridgeManager;
|
|
75
|
+
* provisionWalletBridgeManager: import('../types.js').ScopedBridgeManager;
|
|
76
|
+
* }>} powers
|
|
68
77
|
* @param {{
|
|
69
78
|
* options?: {
|
|
70
|
-
* perAccountInitialValue?: bigint
|
|
71
|
-
* }
|
|
79
|
+
* perAccountInitialValue?: bigint;
|
|
80
|
+
* };
|
|
72
81
|
* }} [config]
|
|
73
82
|
*/
|
|
74
83
|
export const startWalletFactory = async (
|