@agoric/builders 0.1.1-calypso-dev-84eb287.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/CHANGELOG.md +0 -0
- package/LICENSE +201 -0
- package/index.js +0 -0
- package/package.json +84 -0
- package/scripts/inter-protocol/add-STARS.js +43 -0
- package/scripts/inter-protocol/add-collateral-core.js +118 -0
- package/scripts/inter-protocol/deploy-contracts.js +111 -0
- package/scripts/inter-protocol/init-core.js +204 -0
- package/scripts/inter-protocol/invite-committee-core.js +42 -0
- package/scripts/inter-protocol/manual-price-feed.js +123 -0
- package/scripts/inter-protocol/price-feed-core.js +104 -0
- package/scripts/orchestration/init-stakeAtom.js +23 -0
- package/scripts/orchestration/init-stakeBld.js +23 -0
- package/scripts/orchestration/init-stakeOsmo.js +23 -0
- package/scripts/pegasus/init-core.js +23 -0
- package/scripts/smart-wallet/build-game1-start.js +33 -0
- package/scripts/smart-wallet/build-wallet-factory2-upgrade.js +28 -0
- package/scripts/smart-wallet/build-walletFactory-upgrade.js +34 -0
- package/scripts/testing/add-LEMONS.js +23 -0
- package/scripts/testing/add-OLIVES.js +22 -0
- package/scripts/testing/append-chain-info.js +50 -0
- package/scripts/testing/tweak-chain-info.js +53 -0
- package/scripts/vats/add-auction.js +14 -0
- package/scripts/vats/init-core.js +31 -0
- package/scripts/vats/init-localchain.js +20 -0
- package/scripts/vats/init-network.js +19 -0
- package/scripts/vats/init-orchestration.js +20 -0
- package/scripts/vats/init-transfer.js +18 -0
- package/scripts/vats/priceFeedSupport.js +90 -0
- package/scripts/vats/probe-zcf-bundle.js +22 -0
- package/scripts/vats/replace-provisioning.js +23 -0
- package/scripts/vats/replace-zoe.js +19 -0
- package/scripts/vats/restart-vats.js +25 -0
- package/scripts/vats/revive-kread.js +13 -0
- package/scripts/vats/set-core-proposal-env.js +35 -0
- package/scripts/vats/test-localchain.js +18 -0
- package/scripts/vats/test-vtransfer.js +18 -0
- package/scripts/vats/updateAtomPriceFeed.js +21 -0
- package/scripts/vats/updateStAtomPriceFeed.js +21 -0
- package/scripts/vats/updateStOsmoPriceFeed.js +21 -0
- package/scripts/vats/updateStTiaPriceFeed.js +21 -0
- package/scripts/vats/updateStkAtomPriceFeed.js +21 -0
- package/scripts/vats/upgrade-bank.js +18 -0
- package/scripts/vats/upgrade-provisionPool.js +20 -0
- package/scripts/vats/upgrade-zcf.js +18 -0
- package/scripts/vats/upgrade-zoe.js +18 -0
- package/scripts/vats/upgradeScaledPriceAuthorities.js +22 -0
- package/scripts/vats/upgradeVaults.js +23 -0
- package/tsconfig.build.json +11 -0
- package/tsconfig.json +13 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { defaultProposalBuilder as vaultProposalBuilder } from '../inter-protocol/add-collateral-core.js';
|
|
3
|
+
|
|
4
|
+
/** @file This is for use in tests in a3p-integration */
|
|
5
|
+
|
|
6
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
7
|
+
const stars2VaultProposalBuilder = async powers => {
|
|
8
|
+
return vaultProposalBuilder(powers, {
|
|
9
|
+
interchainAssetOptions: {
|
|
10
|
+
denom: 'ibc/111C0FFEECAFE111',
|
|
11
|
+
decimalPlaces: 6,
|
|
12
|
+
keyword: 'OLIVES',
|
|
13
|
+
oracleBrand: 'OLIVES',
|
|
14
|
+
proposedName: 'OLIVES',
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export default async (homeP, endowments) => {
|
|
20
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
21
|
+
await writeCoreEval('add-STARS2-collateral', stars2VaultProposalBuilder);
|
|
22
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/// <reference types="ses" />
|
|
2
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
3
|
+
|
|
4
|
+
/** @type {Record<string, import('@agoric/orchestration/src/chain-info.js').ChainInfo>} */
|
|
5
|
+
const chainInfo = {
|
|
6
|
+
hot: {
|
|
7
|
+
allegedName: 'Hot New Chain',
|
|
8
|
+
chainId: 'hot-1',
|
|
9
|
+
connections: {
|
|
10
|
+
'cosmoshub-4': {
|
|
11
|
+
id: 'connection-99',
|
|
12
|
+
client_id: '07-tendermint-3',
|
|
13
|
+
counterparty: {
|
|
14
|
+
client_id: '07-tendermint-2',
|
|
15
|
+
connection_id: 'connection-1',
|
|
16
|
+
prefix: {
|
|
17
|
+
key_prefix: '',
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
state: 3 /* IBCConnectionState.STATE_OPEN */,
|
|
21
|
+
transferChannel: {
|
|
22
|
+
portId: 'transfer',
|
|
23
|
+
channelId: 'channel-1',
|
|
24
|
+
counterPartyChannelId: 'channel-1',
|
|
25
|
+
counterPartyPortId: 'transfer',
|
|
26
|
+
ordering: 1 /* Order.ORDER_UNORDERED */,
|
|
27
|
+
state: 3 /* IBCConnectionState.STATE_OPEN */,
|
|
28
|
+
version: 'ics20-1',
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
36
|
+
export const defaultProposalBuilder = async () =>
|
|
37
|
+
harden({
|
|
38
|
+
sourceSpec: '@agoric/orchestration/src/proposals/revise-chain-info.js',
|
|
39
|
+
getManifestCall: [
|
|
40
|
+
'getManifestForReviseChains',
|
|
41
|
+
{
|
|
42
|
+
chainInfo,
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
export default async (homeP, endowments) => {
|
|
48
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
49
|
+
await writeCoreEval('revise-chain-info', defaultProposalBuilder);
|
|
50
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/// <reference types="ses" />
|
|
2
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
3
|
+
|
|
4
|
+
/** @type {Record<string, import('@agoric/orchestration/src/chain-info.js').ChainInfo>} */
|
|
5
|
+
const chainInfo = {
|
|
6
|
+
agoric: {
|
|
7
|
+
chainId: 'agoric-4',
|
|
8
|
+
},
|
|
9
|
+
hot: {
|
|
10
|
+
allegedName: 'Hot New Chain',
|
|
11
|
+
chainId: 'hot-1',
|
|
12
|
+
connections: {
|
|
13
|
+
'cosmoshub-4': {
|
|
14
|
+
id: 'connection-99',
|
|
15
|
+
client_id: '07-tendermint-3',
|
|
16
|
+
counterparty: {
|
|
17
|
+
client_id: '07-tendermint-2',
|
|
18
|
+
connection_id: 'connection-1',
|
|
19
|
+
prefix: {
|
|
20
|
+
key_prefix: '',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
state: 3 /* IBCConnectionState.STATE_OPEN */,
|
|
24
|
+
transferChannel: {
|
|
25
|
+
portId: 'transfer',
|
|
26
|
+
channelId: 'channel-1',
|
|
27
|
+
counterPartyChannelId: 'channel-1',
|
|
28
|
+
counterPartyPortId: 'transfer',
|
|
29
|
+
ordering: 1 /* Order.ORDER_UNORDERED */,
|
|
30
|
+
state: 3 /* IBCConnectionState.STATE_OPEN */,
|
|
31
|
+
version: 'ics20-1',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
39
|
+
export const defaultProposalBuilder = async () =>
|
|
40
|
+
harden({
|
|
41
|
+
sourceSpec: '@agoric/orchestration/src/proposals/revise-chain-info.js',
|
|
42
|
+
getManifestCall: [
|
|
43
|
+
'getManifestForReviseChains',
|
|
44
|
+
{
|
|
45
|
+
chainInfo,
|
|
46
|
+
},
|
|
47
|
+
],
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
export default async (homeP, endowments) => {
|
|
51
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
52
|
+
await writeCoreEval('revise-chain-info', defaultProposalBuilder);
|
|
53
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async () => {
|
|
5
|
+
return harden({
|
|
6
|
+
sourceSpec: '@agoric/inter-protocol/src/proposals/add-auction.js',
|
|
7
|
+
getManifestCall: ['getManifestForAddAuction'],
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export default async (homeP, endowments) => {
|
|
12
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
13
|
+
await writeCoreEval('add-auction', defaultProposalBuilder);
|
|
14
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/core/startWalletFactory.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForWalletFactory',
|
|
9
|
+
{
|
|
10
|
+
installKeys: {
|
|
11
|
+
provisionPool: publishRef(
|
|
12
|
+
install(
|
|
13
|
+
'@agoric/inter-protocol/src/provisionPool.js',
|
|
14
|
+
'../bundles/bundle-provisionPool.js',
|
|
15
|
+
),
|
|
16
|
+
),
|
|
17
|
+
walletFactory: publishRef(
|
|
18
|
+
install(
|
|
19
|
+
'@agoric/smart-wallet/src/walletFactory.js',
|
|
20
|
+
'../../smart-wallet/bundles/bundle-walletFactory.js',
|
|
21
|
+
),
|
|
22
|
+
),
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
export default async (homeP, endowments) => {
|
|
29
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
30
|
+
await writeCoreEval('gov-vats', defaultProposalBuilder);
|
|
31
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/localchain-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForLocalChain',
|
|
9
|
+
{
|
|
10
|
+
localchainRef: publishRef(
|
|
11
|
+
install('@agoric/vats/src/vat-localchain.js'),
|
|
12
|
+
),
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
await writeCoreEval('gov-localchain', defaultProposalBuilder);
|
|
20
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/network-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForNetwork',
|
|
9
|
+
{
|
|
10
|
+
networkRef: publishRef(install('@agoric/vats/src/vat-network.js')),
|
|
11
|
+
ibcRef: publishRef(install('@agoric/vats/src/vat-ibc.js')),
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export default async (homeP, endowments) => {
|
|
17
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
18
|
+
await writeCoreEval('gov-network', defaultProposalBuilder);
|
|
19
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/orchestration/src/proposals/orchestration-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForOrchestration',
|
|
9
|
+
{
|
|
10
|
+
orchestrationRef: publishRef(
|
|
11
|
+
install('@agoric/orchestration/src/vat-orchestration.js'),
|
|
12
|
+
),
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
await writeCoreEval('gov-orchestration', defaultProposalBuilder);
|
|
20
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/transfer-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForTransfer',
|
|
9
|
+
{
|
|
10
|
+
transferRef: publishRef(install('@agoric/vats/src/vat-transfer.js')),
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export default async (homeP, endowments) => {
|
|
16
|
+
const { writeCoreProposal } = await makeHelpers(homeP, endowments);
|
|
17
|
+
await writeCoreProposal('gov-transfer', defaultProposalBuilder);
|
|
18
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/* global process */
|
|
2
|
+
|
|
3
|
+
import { DEFAULT_CONTRACT_TERMS } from '../inter-protocol/price-feed-core.js';
|
|
4
|
+
|
|
5
|
+
const { Fail } = assert;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* modified copy of ../inter-protocol/price-feed-core.js
|
|
9
|
+
*
|
|
10
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
11
|
+
*/
|
|
12
|
+
export const strictPriceFeedProposalBuilder = async (
|
|
13
|
+
{ publishRef, install },
|
|
14
|
+
options,
|
|
15
|
+
) => {
|
|
16
|
+
const {
|
|
17
|
+
AGORIC_INSTANCE_NAME,
|
|
18
|
+
IN_BRAND_LOOKUP,
|
|
19
|
+
IN_BRAND_NAME = IN_BRAND_LOOKUP[IN_BRAND_LOOKUP.length - 1],
|
|
20
|
+
ORACLE_ADDRESSES,
|
|
21
|
+
} = options;
|
|
22
|
+
|
|
23
|
+
const oracleAddresses = ORACLE_ADDRESSES;
|
|
24
|
+
Array.isArray(oracleAddresses) ||
|
|
25
|
+
Fail`ORACLE_ADDRESSES array is required; got ${oracleAddresses}`;
|
|
26
|
+
|
|
27
|
+
AGORIC_INSTANCE_NAME ||
|
|
28
|
+
Fail`AGORIC_INSTANCE_NAME is required; got ${AGORIC_INSTANCE_NAME}`;
|
|
29
|
+
|
|
30
|
+
Array.isArray(IN_BRAND_LOOKUP) ||
|
|
31
|
+
Fail`IN_BRAND_NAME array is required; got ${IN_BRAND_LOOKUP}`;
|
|
32
|
+
|
|
33
|
+
return harden({
|
|
34
|
+
sourceSpec: '@agoric/inter-protocol/src/proposals/price-feed-proposal.js',
|
|
35
|
+
getManifestCall: [
|
|
36
|
+
'getManifestForPriceFeed',
|
|
37
|
+
{
|
|
38
|
+
AGORIC_INSTANCE_NAME,
|
|
39
|
+
contractTerms: DEFAULT_CONTRACT_TERMS,
|
|
40
|
+
oracleAddresses,
|
|
41
|
+
IN_BRAND_NAME,
|
|
42
|
+
IN_BRAND_DECIMALS: 6,
|
|
43
|
+
OUT_BRAND_DECIMALS: 4,
|
|
44
|
+
OUT_BRAND_NAME: 'USD',
|
|
45
|
+
priceAggregatorRef: publishRef(
|
|
46
|
+
install(
|
|
47
|
+
'@agoric/inter-protocol/src/price/fluxAggregatorContract.js',
|
|
48
|
+
'../bundles/bundle-fluxAggregatorKit.js',
|
|
49
|
+
),
|
|
50
|
+
),
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @deprecated use `strictPriceFeedProposalBuilder` and specify arguments instead
|
|
58
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
59
|
+
*/
|
|
60
|
+
export const deprecatedPriceFeedProposalBuilder = async (powers, options) => {
|
|
61
|
+
console.warn(
|
|
62
|
+
'deprecated ambient `priceFeedProposalBuilder`; use `strictPriceFeedProposalBuilder` instead',
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
const DEFAULT_ORACLE_ADDRESSES = [
|
|
66
|
+
// XXX These are the oracle addresses. They must be provided before the chain
|
|
67
|
+
// is running, which means they must be known ahead of time.
|
|
68
|
+
// see https://github.com/Agoric/agoric-3-proposals/issues/5
|
|
69
|
+
'agoric1lu9hh5vgx05hmlpfu47hukershgdxctk6l5s05',
|
|
70
|
+
'agoric15lpnq2mjsdhtztf6khp7mrsq66hyrssspy92pd',
|
|
71
|
+
'agoric1mwm224epc4l3pjcz7qsxnudcuktpynwkmnfqfp',
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const { GOV1ADDR, GOV2ADDR, GOV3ADDR } = process.env;
|
|
75
|
+
const governanceAddressEnv = [GOV1ADDR, GOV2ADDR, GOV3ADDR].filter(x => x);
|
|
76
|
+
const ORACLE_ADDRESSES = governanceAddressEnv.length
|
|
77
|
+
? governanceAddressEnv
|
|
78
|
+
: DEFAULT_ORACLE_ADDRESSES;
|
|
79
|
+
|
|
80
|
+
return strictPriceFeedProposalBuilder(powers, {
|
|
81
|
+
...options,
|
|
82
|
+
ORACLE_ADDRESSES,
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* @deprecated use `strictPriceFeedProposalBuilder` and specify arguments instead
|
|
88
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
89
|
+
*/
|
|
90
|
+
export const priceFeedProposalBuilder = deprecatedPriceFeedProposalBuilder;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/probeZcfBundle.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForProbeZcfBundleCap',
|
|
9
|
+
{
|
|
10
|
+
zoeRef: publishRef(install('@agoric/vats/src/vat-zoe.js')),
|
|
11
|
+
zcfRef: publishRef(install('@agoric/zoe/src/contractFacet/vatRoot.js')),
|
|
12
|
+
walletRef: publishRef(
|
|
13
|
+
install('@agoric/smart-wallet/src/walletFactory.js'),
|
|
14
|
+
),
|
|
15
|
+
},
|
|
16
|
+
],
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export default async (homeP, endowments) => {
|
|
20
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
21
|
+
await writeCoreEval('probeZcfBundle', defaultProposalBuilder);
|
|
22
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
3
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
4
|
+
import { getManifestForProvisioning } from '@agoric/vats/src/proposals/namesByAddress-fix-proposal.js';
|
|
5
|
+
|
|
6
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
7
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
8
|
+
harden({
|
|
9
|
+
sourceSpec: '@agoric/vats/src/proposals/namesByAddress-fix-proposal.js',
|
|
10
|
+
getManifestCall: [
|
|
11
|
+
getManifestForProvisioning.name,
|
|
12
|
+
{
|
|
13
|
+
provisioningRef: publishRef(
|
|
14
|
+
install('@agoric/vats/src/vat-provisioning.js'),
|
|
15
|
+
),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export default async (homeP, endowments) => {
|
|
21
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
22
|
+
await writeCoreEval('gov-provisioning', defaultProposalBuilder);
|
|
23
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/zcf-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForZoe',
|
|
9
|
+
{
|
|
10
|
+
zoeRef: publishRef(install('@agoric/vats/src/vat-zoe.js')),
|
|
11
|
+
zcfRef: publishRef(install('@agoric/zoe/src/contractFacet/vatRoot.js')),
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export default async (homeP, endowments) => {
|
|
17
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
18
|
+
await writeCoreEval('replace-zcf', defaultProposalBuilder);
|
|
19
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async () => {
|
|
5
|
+
// An includelist isn't necessary because the collections are known to be complete (tested in test-vaults-upgrade.js)
|
|
6
|
+
const skip = [
|
|
7
|
+
// can be replaced instead of upgraded
|
|
8
|
+
'auctioneer',
|
|
9
|
+
'feeDistributor',
|
|
10
|
+
// skip so vaultManager can have prices upon restart; these have been tested as restartable
|
|
11
|
+
'scaledPriceAuthority-ATOM',
|
|
12
|
+
// If this is killed, and the above is left alive, quoteNotifier throws
|
|
13
|
+
'ATOM-USD_price_feed',
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
return harden({
|
|
17
|
+
sourceSpec: '@agoric/vats/src/proposals/restart-vats-proposal.js',
|
|
18
|
+
getManifestCall: ['getManifestForRestart', harden({ skip })],
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export default async (homeP, endowments) => {
|
|
23
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
24
|
+
await writeCoreEval('restart-vats', defaultProposalBuilder);
|
|
25
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async () =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/kread-proposal.js',
|
|
7
|
+
getManifestCall: ['getManifestForKread'],
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
export default async (homeP, endowments) => {
|
|
11
|
+
const { writeCoreProposal } = await makeHelpers(homeP, endowments);
|
|
12
|
+
await writeCoreProposal('revive-kread', defaultProposalBuilder);
|
|
13
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#! /usr/bin/env node
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import process from 'process';
|
|
4
|
+
import { createRequire } from 'module';
|
|
5
|
+
|
|
6
|
+
const require = createRequire(import.meta.url);
|
|
7
|
+
const spec = process.argv[2];
|
|
8
|
+
if (!spec) {
|
|
9
|
+
process.exit(0);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const vatConfigFile = require.resolve(spec);
|
|
13
|
+
const configJson = fs.readFileSync(vatConfigFile, 'utf-8');
|
|
14
|
+
const config = JSON.parse(configJson);
|
|
15
|
+
|
|
16
|
+
const envs = new Map();
|
|
17
|
+
if (Array.isArray(config?.coreProposals)) {
|
|
18
|
+
for (const { env = {} } of config.coreProposals) {
|
|
19
|
+
for (const [key, val] of Object.entries(env)) {
|
|
20
|
+
const oldVal = envs.get(key);
|
|
21
|
+
if (envs.has(key) && oldVal !== val) {
|
|
22
|
+
throw Error(
|
|
23
|
+
`Duplicate env key: ${key}, but value is ${val} not ${oldVal}`,
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
envs.set(key, val);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
for (const [key, val] of envs.entries()) {
|
|
32
|
+
process.stdout.write(
|
|
33
|
+
`${key}="${val.replace(/(\\)/g, '\\$1').replace(/(")/g, '\\$1')}"\n`,
|
|
34
|
+
);
|
|
35
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async _powers =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/localchain-test.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForLocalChainTest',
|
|
9
|
+
{
|
|
10
|
+
testResultPath: 'test.localchain',
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export default async (homeP, endowments) => {
|
|
16
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
17
|
+
await writeCoreEval('test-localchain', defaultProposalBuilder);
|
|
18
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async _powers =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/vtransfer-echoer.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForVtransferEchoer',
|
|
9
|
+
{
|
|
10
|
+
target: 'agoric1vtransfertest',
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export default async (homeP, endowments) => {
|
|
16
|
+
const { writeCoreProposal } = await makeHelpers(homeP, endowments);
|
|
17
|
+
await writeCoreProposal('test-vtransfer', defaultProposalBuilder);
|
|
18
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { priceFeedProposalBuilder } from './priceFeedSupport.js';
|
|
3
|
+
|
|
4
|
+
const OPTIONS = {
|
|
5
|
+
AGORIC_INSTANCE_NAME: 'ATOM-USD price feed',
|
|
6
|
+
IN_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'ATOM'],
|
|
7
|
+
OUT_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'USD'],
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
12
|
+
*/
|
|
13
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) => {
|
|
14
|
+
return priceFeedProposalBuilder({ publishRef, install }, OPTIONS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
|
|
20
|
+
await writeCoreEval('atomPriceFeed', defaultProposalBuilder);
|
|
21
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { priceFeedProposalBuilder } from './priceFeedSupport.js';
|
|
3
|
+
|
|
4
|
+
const OPTIONS = {
|
|
5
|
+
AGORIC_INSTANCE_NAME: 'stATOM-USD price feed',
|
|
6
|
+
IN_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'stATOM'],
|
|
7
|
+
OUT_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'USD'],
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
12
|
+
*/
|
|
13
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) => {
|
|
14
|
+
return priceFeedProposalBuilder({ publishRef, install }, OPTIONS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
|
|
20
|
+
await writeCoreEval('stAtomPriceFeed', defaultProposalBuilder);
|
|
21
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { priceFeedProposalBuilder } from './priceFeedSupport.js';
|
|
3
|
+
|
|
4
|
+
const OPTIONS = {
|
|
5
|
+
AGORIC_INSTANCE_NAME: 'stOSMO-USD price feed',
|
|
6
|
+
IN_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'stOSMO'],
|
|
7
|
+
OUT_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'USD'],
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
12
|
+
*/
|
|
13
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) => {
|
|
14
|
+
return priceFeedProposalBuilder({ publishRef, install }, OPTIONS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
|
|
20
|
+
await writeCoreEval('stOsmoPriceFeed', defaultProposalBuilder);
|
|
21
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { priceFeedProposalBuilder } from './priceFeedSupport.js';
|
|
3
|
+
|
|
4
|
+
const OPTIONS = {
|
|
5
|
+
AGORIC_INSTANCE_NAME: 'stTIA-USD price feed',
|
|
6
|
+
IN_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'stTIA'],
|
|
7
|
+
OUT_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'USD'],
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
12
|
+
*/
|
|
13
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) => {
|
|
14
|
+
return priceFeedProposalBuilder({ publishRef, install }, OPTIONS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
|
|
20
|
+
await writeCoreEval('stTiaPriceFeed', defaultProposalBuilder);
|
|
21
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
import { priceFeedProposalBuilder } from './priceFeedSupport.js';
|
|
3
|
+
|
|
4
|
+
const OPTIONS = {
|
|
5
|
+
AGORIC_INSTANCE_NAME: 'stkATOM-USD price feed',
|
|
6
|
+
IN_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'stkATOM'],
|
|
7
|
+
OUT_BRAND_LOOKUP: ['agoricNames', 'oracleBrand', 'USD'],
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder}
|
|
12
|
+
*/
|
|
13
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) => {
|
|
14
|
+
return priceFeedProposalBuilder({ publishRef, install }, OPTIONS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default async (homeP, endowments) => {
|
|
18
|
+
const { writeCoreEval } = await makeHelpers(homeP, endowments);
|
|
19
|
+
|
|
20
|
+
await writeCoreEval('stkATOMPriceFeed', defaultProposalBuilder);
|
|
21
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { makeHelpers } from '@agoric/deploy-script-support';
|
|
2
|
+
|
|
3
|
+
/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */
|
|
4
|
+
export const defaultProposalBuilder = async ({ publishRef, install }) =>
|
|
5
|
+
harden({
|
|
6
|
+
sourceSpec: '@agoric/vats/src/proposals/upgrade-bank-proposal.js',
|
|
7
|
+
getManifestCall: [
|
|
8
|
+
'getManifestForUpgradingBank',
|
|
9
|
+
{
|
|
10
|
+
bankRef: publishRef(install('@agoric/vats/src/vat-bank.js')),
|
|
11
|
+
},
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export default async (homeP, endowments) => {
|
|
16
|
+
const { writeCoreProposal } = await makeHelpers(homeP, endowments);
|
|
17
|
+
await writeCoreProposal('upgrade-bank', defaultProposalBuilder);
|
|
18
|
+
};
|