@agoric/inter-protocol 0.16.2-dev-2da8e5c.0.2da8e5c → 0.16.2-dev-57c6564.0.57c6564
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 +16 -16
- package/source-spec-registry.js +2 -4
- package/src/auction/util.d.ts.map +1 -1
- package/src/auction/util.js +1 -1
- package/src/proposals/addAssetToVault.js +2 -2
- package/src/proposals/econ-behaviors.js +28 -3
- package/src/proposals/replace-scaledPriceAuthorities.js +9 -2
- package/src/proposals/startPSM.js +0 -5
- package/src/vaultFactory/vault.d.ts +2 -3
- package/src/vaultFactory/vault.d.ts.map +1 -1
- package/src/vaultFactory/vault.js +5 -3
- package/src/vaultFactory/vaultDirector.d.ts +5 -42
- package/src/vaultFactory/vaultDirector.d.ts.map +1 -1
- package/src/vaultFactory/vaultDirector.js +5 -2
- package/src/vaultFactory/vaultFactory.d.ts +5 -42
- package/src/vaultFactory/vaultFactory.d.ts.map +1 -1
- package/src/vaultFactory/vaultManager.d.ts.map +1 -1
- package/src/vaultFactory/vaultManager.js +3 -1
- package/src/provisionPool.d.ts +0 -87
- package/src/provisionPool.d.ts.map +0 -1
- package/src/provisionPool.js +0 -145
- package/src/provisionPoolKit.d.ts +0 -81
- package/src/provisionPoolKit.d.ts.map +0 -1
- package/src/provisionPoolKit.js +0 -618
package/src/provisionPool.js
DELETED
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
handleParamGovernance,
|
|
3
|
-
ParamTypes,
|
|
4
|
-
publicMixinAPI,
|
|
5
|
-
} from '@agoric/governance';
|
|
6
|
-
import { InvitationShape } from '@agoric/governance/src/typeGuards.js';
|
|
7
|
-
import { wrapRemoteMarshaller } from '@agoric/internal/src/marshal/wrap-marshaller.js';
|
|
8
|
-
import { M } from '@agoric/store';
|
|
9
|
-
import { prepareExo } from '@agoric/vat-data';
|
|
10
|
-
import { provideSingleton } from '@agoric/zoe/src/contractSupport/durability.js';
|
|
11
|
-
import { prepareRecorderKitMakers } from '@agoric/zoe/src/contractSupport/recorder.js';
|
|
12
|
-
import { TopicsRecordShape } from '@agoric/zoe/src/contractSupport/topics.js';
|
|
13
|
-
import { makeDurableZone } from '@agoric/zone/durable.js';
|
|
14
|
-
import {
|
|
15
|
-
prepareBridgeProvisionTool,
|
|
16
|
-
prepareProvisionPoolKit,
|
|
17
|
-
} from './provisionPoolKit.js';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @import {Remote} from '@agoric/internal';
|
|
21
|
-
* @import {Amount, Brand, Payment, Purse} from '@agoric/ertp';
|
|
22
|
-
* @import {ContractMeta, Invitation, StandardTerms, ZCF} from '@agoric/zoe';
|
|
23
|
-
* @import {GovernanceTerms} from '@agoric/governance/src/types.js';
|
|
24
|
-
* @import {ERef} from '@endo/far';
|
|
25
|
-
* @import {Bank} from '@agoric/vats/src/vat-bank.js';
|
|
26
|
-
* @import {MetricsNotification} from './provisionPoolKit.js';
|
|
27
|
-
* @import {Baggage} from '@agoric/vat-data';
|
|
28
|
-
* @import {StorageNode} from '@agoric/internal/src/lib-chainStorage.js';
|
|
29
|
-
* @import {Marshaller} from '@agoric/internal/src/lib-chainStorage.js';
|
|
30
|
-
*/
|
|
31
|
-
|
|
32
|
-
/** @type {ContractMeta<typeof start>} */
|
|
33
|
-
export const meta = {
|
|
34
|
-
// @ts-expect-error splitRecord loses the property keys
|
|
35
|
-
privateArgsShape: M.splitRecord(
|
|
36
|
-
{
|
|
37
|
-
poolBank: M.eref(M.remotable('bank')),
|
|
38
|
-
storageNode: M.eref(M.remotable('storageNode')),
|
|
39
|
-
marshaller: M.eref(M.remotable('marshaller')),
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
// only necessary on first invocation, not subsequent
|
|
43
|
-
initialPoserInvitation: InvitationShape,
|
|
44
|
-
metricsOverride: M.recordOf(M.string()),
|
|
45
|
-
},
|
|
46
|
-
),
|
|
47
|
-
upgradability: 'canUpgrade',
|
|
48
|
-
};
|
|
49
|
-
harden(meta);
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* @typedef {StandardTerms &
|
|
53
|
-
* GovernanceTerms<{
|
|
54
|
-
* PerAccountInitialAmount: 'amount';
|
|
55
|
-
* }>} ProvisionTerms
|
|
56
|
-
* TODO: ERef<GovernedCreatorFacet<ProvisionCreator>>
|
|
57
|
-
* @param {ZCF<ProvisionTerms>} zcf
|
|
58
|
-
* @param {{
|
|
59
|
-
* poolBank: ERef<Bank>;
|
|
60
|
-
* initialPoserInvitation: Invitation;
|
|
61
|
-
* storageNode: Remote<StorageNode>;
|
|
62
|
-
* marshaller: Remote<Marshaller>;
|
|
63
|
-
* metricsOverride?: MetricsNotification;
|
|
64
|
-
* governedParamOverrides?: Record<string, Amount | undefined>;
|
|
65
|
-
* }} privateArgs
|
|
66
|
-
* @param {Baggage} baggage
|
|
67
|
-
*/
|
|
68
|
-
export const start = async (zcf, privateArgs, baggage) => {
|
|
69
|
-
const { poolBank, metricsOverride } = privateArgs;
|
|
70
|
-
|
|
71
|
-
const { marshaller: remoteMarshaller } = privateArgs;
|
|
72
|
-
const cachingMarshaller = wrapRemoteMarshaller(remoteMarshaller);
|
|
73
|
-
|
|
74
|
-
const { makeRecorderKit } = prepareRecorderKitMakers(
|
|
75
|
-
baggage,
|
|
76
|
-
cachingMarshaller,
|
|
77
|
-
);
|
|
78
|
-
|
|
79
|
-
// Governance
|
|
80
|
-
const { publicMixin, makeDurableGovernorFacet, params } =
|
|
81
|
-
await handleParamGovernance(
|
|
82
|
-
zcf,
|
|
83
|
-
privateArgs.initialPoserInvitation,
|
|
84
|
-
{
|
|
85
|
-
PerAccountInitialAmount: ParamTypes.AMOUNT,
|
|
86
|
-
},
|
|
87
|
-
privateArgs.storageNode,
|
|
88
|
-
privateArgs.marshaller,
|
|
89
|
-
privateArgs.governedParamOverrides,
|
|
90
|
-
);
|
|
91
|
-
|
|
92
|
-
const zone = makeDurableZone(baggage);
|
|
93
|
-
|
|
94
|
-
const makeBridgeProvisionTool = prepareBridgeProvisionTool(zone);
|
|
95
|
-
const makeProvisionPoolKit = prepareProvisionPoolKit(zone, {
|
|
96
|
-
makeRecorderKit,
|
|
97
|
-
params,
|
|
98
|
-
poolBank,
|
|
99
|
-
zcf,
|
|
100
|
-
makeBridgeProvisionTool,
|
|
101
|
-
});
|
|
102
|
-
|
|
103
|
-
const poolBrand = /** @type {Brand<'nat'>} */ (
|
|
104
|
-
params.getPerAccountInitialAmount().brand
|
|
105
|
-
);
|
|
106
|
-
const provisionPoolKit = await provideSingleton(
|
|
107
|
-
baggage,
|
|
108
|
-
'provisionPoolKit',
|
|
109
|
-
() =>
|
|
110
|
-
makeProvisionPoolKit({
|
|
111
|
-
poolBrand,
|
|
112
|
-
storageNode: privateArgs.storageNode,
|
|
113
|
-
}),
|
|
114
|
-
);
|
|
115
|
-
provisionPoolKit.helper.start(poolBrand, { metrics: metricsOverride });
|
|
116
|
-
|
|
117
|
-
const publicFacet = prepareExo(
|
|
118
|
-
baggage,
|
|
119
|
-
'Provisioning Pool public',
|
|
120
|
-
M.interface('ProvisionPool', {
|
|
121
|
-
getMetrics: M.callWhen().returns(M.remotable('MetricsSubscriber')),
|
|
122
|
-
getPublicTopics: M.callWhen().returns(TopicsRecordShape),
|
|
123
|
-
...publicMixinAPI,
|
|
124
|
-
}),
|
|
125
|
-
{
|
|
126
|
-
async getMetrics() {
|
|
127
|
-
await null;
|
|
128
|
-
return provisionPoolKit.public.getPublicTopics().metrics.subscriber;
|
|
129
|
-
},
|
|
130
|
-
async getPublicTopics() {
|
|
131
|
-
await null;
|
|
132
|
-
return provisionPoolKit.public.getPublicTopics();
|
|
133
|
-
},
|
|
134
|
-
...publicMixin,
|
|
135
|
-
},
|
|
136
|
-
);
|
|
137
|
-
|
|
138
|
-
return harden({
|
|
139
|
-
creatorFacet: makeDurableGovernorFacet(baggage, provisionPoolKit.machine)
|
|
140
|
-
.governorFacet,
|
|
141
|
-
publicFacet,
|
|
142
|
-
});
|
|
143
|
-
};
|
|
144
|
-
|
|
145
|
-
harden(start);
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
export function prepareBridgeProvisionTool(zone: Zone): (bankManager: ERef<import("@endo/exo").Guarded<{
|
|
2
|
-
getAssetSubscription(): import("@agoric/notifier").IterableEachTopic<AssetDescriptor>;
|
|
3
|
-
getRewardDistributorDepositFacet(denom: string, feeKit: AssetIssuerKit): ERef<import("@endo/far").EOnly<import("@agoric/ertp").DepositFacet>>;
|
|
4
|
-
getModuleAccountAddress(moduleName: string): Promise<string | null>;
|
|
5
|
-
addAsset(denom: string, issuerName: string, proposedName: string, kit: AssetIssuerKit & {
|
|
6
|
-
payment?: ERef<Payment<"nat">>;
|
|
7
|
-
}): Promise<void>;
|
|
8
|
-
getBankForAddress(address: string): Promise<Bank>;
|
|
9
|
-
}>>, walletFactory: ERef<import("@endo/exo").Guarded<{
|
|
10
|
-
provideSmartWallet(address: string, bank: ERef<Bank>, namesByAddressAdmin: ERef<NameAdmin>): Promise<[wallet: import("@agoric/smart-wallet/src/smartWallet.js").SmartWallet, isNew: boolean]>;
|
|
11
|
-
}>>, namesByAddressAdmin: ERef<NameAdmin>, forHandler: any) => import("@endo/exo").Guarded<{
|
|
12
|
-
/** @param {BridgeMessage} obj */
|
|
13
|
-
fromBridge(obj: BridgeMessage): Promise<void>;
|
|
14
|
-
}>;
|
|
15
|
-
export function prepareProvisionPoolKit(zone: Zone, { makeRecorderKit, params, poolBank, zcf, makeBridgeProvisionTool }: {
|
|
16
|
-
makeRecorderKit: MakeRecorderKit;
|
|
17
|
-
params: any;
|
|
18
|
-
poolBank: ERef<Bank>;
|
|
19
|
-
zcf: ZCF;
|
|
20
|
-
makeBridgeProvisionTool: ReturnType<typeof prepareBridgeProvisionTool>;
|
|
21
|
-
}): ({ poolBrand, storageNode }: {
|
|
22
|
-
poolBrand: Brand<"nat">;
|
|
23
|
-
storageNode: ERemote<StorageNode>;
|
|
24
|
-
}) => Promise<ProvisionPoolKit>;
|
|
25
|
-
export type ProvisionPoolKit = {
|
|
26
|
-
machine: {
|
|
27
|
-
addRevivableAddresses: (oldAddresses: string[]) => void;
|
|
28
|
-
getWalletReviver: () => ERef<any>;
|
|
29
|
-
setReferences: (erefs: ProvisionPoolKitReferences) => Promise<void>;
|
|
30
|
-
makeHandler: () => ERef<BridgeHandler>;
|
|
31
|
-
initPSM: (brand: Brand, instance: Instance<typeof psmStart>) => void;
|
|
32
|
-
};
|
|
33
|
-
helper: any;
|
|
34
|
-
forHandler: any;
|
|
35
|
-
public: any;
|
|
36
|
-
};
|
|
37
|
-
export type PsmInstance = Instance<typeof psmStart>;
|
|
38
|
-
export type ProvisionPoolKitReferences = {
|
|
39
|
-
bankManager: ERef<BankManager>;
|
|
40
|
-
namesByAddressAdmin: ERef<NameAdmin>;
|
|
41
|
-
walletFactory: ERef<WalletFactoryStartResult["creatorFacet"]>;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Metrics naming scheme is that nouns are
|
|
45
|
-
* present values and past-participles are accumulative.
|
|
46
|
-
*/
|
|
47
|
-
export type MetricsNotification = {
|
|
48
|
-
/**
|
|
49
|
-
* count of new wallets provisioned
|
|
50
|
-
*/
|
|
51
|
-
walletsProvisioned: bigint;
|
|
52
|
-
/**
|
|
53
|
-
* running sum of Minted provided
|
|
54
|
-
* to new wallets
|
|
55
|
-
*/
|
|
56
|
-
totalMintedProvided: Amount<"nat">;
|
|
57
|
-
/**
|
|
58
|
-
* running sum of Minted ever
|
|
59
|
-
* received by the contract from PSM
|
|
60
|
-
*/
|
|
61
|
-
totalMintedConverted: Amount<"nat">;
|
|
62
|
-
};
|
|
63
|
-
import type { Zone } from '@agoric/zone';
|
|
64
|
-
import type { AssetDescriptor } from '@agoric/vats/src/vat-bank.js';
|
|
65
|
-
import type { ERef } from '@endo/far';
|
|
66
|
-
import type { Payment } from '@agoric/ertp';
|
|
67
|
-
import type { Bank } from '@agoric/vats/src/vat-bank.js';
|
|
68
|
-
import type { NameAdmin } from '@agoric/vats';
|
|
69
|
-
import type { BridgeMessage } from '@agoric/cosmic-swingset/src/types.js';
|
|
70
|
-
import type { MakeRecorderKit } from '@agoric/zoe/src/contractSupport/recorder.js';
|
|
71
|
-
import type { ZCF } from '@agoric/zoe';
|
|
72
|
-
import type { Brand } from '@agoric/ertp';
|
|
73
|
-
import type { StorageNode } from '@agoric/internal/src/lib-chainStorage.js';
|
|
74
|
-
import type { ERemote } from '@agoric/internal';
|
|
75
|
-
import type { BridgeHandler } from '@agoric/vats';
|
|
76
|
-
import type { start as psmStart } from '@agoric/inter-protocol/src/psm/psm.js';
|
|
77
|
-
import type { Instance } from '@agoric/zoe/src/zoeService/utils.js';
|
|
78
|
-
import type { BankManager } from '@agoric/vats/src/vat-bank.js';
|
|
79
|
-
import type { WalletFactoryStartResult } from '@agoric/vats/src/core/startWalletFactory.js';
|
|
80
|
-
import type { Amount } from '@agoric/ertp';
|
|
81
|
-
//# sourceMappingURL=provisionPoolKit.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provisionPoolKit.d.ts","sourceRoot":"","sources":["provisionPoolKit.js"],"names":[],"mappings":"AAiGO,iDAFI,IAAI;;;;;eA2gBgY,CAAC;;;;;;IAtf1Y,iCAAiC;oBAArB,aAAa;GA6B5B;AAYI,8CATI,IAAI,uEACJ;IACN,eAAe,EAAE,eAAe,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC;IACrB,GAAG,EAAE,GAAG,CAAC;IACT,uBAAuB,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;CACxE,gCA6bC;IAA2B,SAAS,EAA5B,MAAM,KAAK,CAAC;IACe,WAAW,EAAtC,QAAQ,WAAW,CAAC;CAC5B,KAAU,OAAO,CAAC,gBAAgB,CAAC,CAevC;+BAjjBY;IACR,OAAO,EAAE;QACP,qBAAqB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;QACxD,gBAAgB,EAAE,MAAM,KAAK,GAAG,CAAC,CAAC;QAClC,aAAa,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACpE,WAAW,EAAE,MAAM,KAAK,aAAa,CAAC,CAAC;QACvC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,eAAe,CAAC,KAAK,IAAI,CAAC;KACtE,CAAC;IACF,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;CACb;0BAIS,SAAS,eAAe,CAAC;;iBAKxB,KAAK,WAAW,CAAC;yBACjB,KAAK,SAAS,CAAC;mBACf,KAAK,wBAAwB,CAAC,cAAc,CAAC,CAAC;;;;;;;;;;wBAM9C,MAAM;;;;;yBACN,OAAO,KAAK,CAAC;;;;;0BAEb,OAAO,KAAK,CAAC;;0BA/CJ,cAAc;qCAKH,8BAA8B;0BAZzC,WAAW;6BAJc,cAAc;0BAK1B,8BAA8B;+BAItC,cAAc;mCAVV,sCAAsC;qCAcpC,6CAA6C;yBAVzD,aAAa;2BAHa,cAAc;iCAEhC,0CAA0C;6BADtC,kBAAkB;mCAcpB,cAAc;uCAPV,uCAAuC;8BADhD,qCAAqC;iCAF5B,8BAA8B;8CAKvB,6CAA6C;4BAVxC,cAAc"}
|