diff --git a/a3p-integration/proposals/p:upgrade-19/.gitignore b/a3p-integration/proposals/p:upgrade-19/.gitignore index 70e47ab7438..57c4873daf7 100644 --- a/a3p-integration/proposals/p:upgrade-19/.gitignore +++ b/a3p-integration/proposals/p:upgrade-19/.gitignore @@ -5,3 +5,4 @@ addUsdOlives/ upgradeProvisionPool/ upgradeAgoricNames/ publishTestInfo/ +upgrade-mintHolder/ diff --git a/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script-permit.json b/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script-permit.json new file mode 100644 index 00000000000..27ba77ddaf6 --- /dev/null +++ b/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script-permit.json @@ -0,0 +1 @@ +true diff --git a/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script.tjs b/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script.tjs new file mode 100644 index 00000000000..eb1a4815470 --- /dev/null +++ b/a3p-integration/proposals/p:upgrade-19/mint-payment/send-script.tjs @@ -0,0 +1,56 @@ +/* global E */ + +/// +/// + +/** + * The primary purpose of this script is to mint a payment of a certain + * bankAsset and deposit in an user wallet. + * + * The receiverAddress and label placeholders should be replaced with + * the desired address and asset name during the execution of each test case. + * + * See z:acceptance/mintHolder.test.js + * + * @param {BootstrapPowers} powers + */ +const sendBankAsset = async powers => { + const { + consume: { namesByAddress, contractKits: contractKitsP }, + } = powers; + + const receiverAddress = '{{ADDRESS}}'; + const label = '{{LABEL}}'; + const valueStr = '{{VALUE}}'; + const value = BigInt(valueStr) + + console.log(`Start sendBankAsset for ${label}`); + + const contractKits = await contractKitsP; + const mintHolderKit = Array.from(contractKits.values()).filter( + kit => kit.label && kit.label === label, + ); + + const { creatorFacet: mint, publicFacet: issuer } = mintHolderKit[0]; + + /* + * Ensure that publicFacet holds an issuer by verifying that has + * the makeEmptyPurse method. + */ + await E(issuer).makeEmptyPurse() + + const brand = await E(issuer).getBrand(); + const amount = harden({ value, brand }); + const payment = await E(mint).mintPayment(amount); + + const receiverDepositFacet = E(namesByAddress).lookup( + receiverAddress, + 'depositFacet', + ); + + await E(receiverDepositFacet).receive(payment); + + console.log(`Finished sendBankAsset for ${label}`); +}; + +sendBankAsset; diff --git a/a3p-integration/proposals/p:upgrade-19/mintHolder.test.js b/a3p-integration/proposals/p:upgrade-19/mintHolder.test.js new file mode 100644 index 00000000000..32a187bcb25 --- /dev/null +++ b/a3p-integration/proposals/p:upgrade-19/mintHolder.test.js @@ -0,0 +1,28 @@ +/* eslint-env node */ + +import '@endo/init'; +import test from 'ava'; +import { addUser, provisionSmartWallet } from '@agoric/synthetic-chain'; +import { + mintPayment, + getAssetList, + swap, + getPSMChildren, + upgradeMintHolder, +} from './test-lib/mintHolder-helpers.js'; +import { networkConfig } from './test-lib/index.js'; + +test('mintHolder contract is upgraded', async t => { + const receiver = await addUser('receiver'); + await provisionSmartWallet(receiver, `20000000ubld`); + + let assetList = await getAssetList(); + t.log('List of mintHolder vats being upgraded: ', assetList); + await upgradeMintHolder(`upgrade-mintHolder`, assetList); + await mintPayment(t, receiver, assetList, 10); + + const psmLabelList = await getPSMChildren(fetch, networkConfig); + assetList = await getAssetList(psmLabelList); + t.log('List of assets being swapped with IST via PSM: ', assetList); + await swap(t, receiver, assetList, 5); +}); diff --git a/a3p-integration/proposals/p:upgrade-19/package.json b/a3p-integration/proposals/p:upgrade-19/package.json index d5503b4d1c6..bdd9490ec35 100644 --- a/a3p-integration/proposals/p:upgrade-19/package.json +++ b/a3p-integration/proposals/p:upgrade-19/package.json @@ -10,13 +10,14 @@ "testing/test-upgraded-board.js testUpgradedBoard", "vats/upgrade-agoricNames.js agoricNamesCoreEvals/upgradeAgoricNames", "testing/add-USD-OLIVES.js agoricNamesCoreEvals/addUsdOlives", - "testing/publish-test-info.js agoricNamesCoreEvals/publishTestInfo" + "testing/publish-test-info.js agoricNamesCoreEvals/publishTestInfo", + "vats/upgrade-mintHolder.js upgrade-mintHolder A3P_INTEGRATION" ] }, "type": "module", "license": "Apache-2.0", "dependencies": { - "@agoric/client-utils": "0.1.1-dev-02c06c4.0", + "@agoric/client-utils": "dev", "@agoric/ertp": "dev", "@agoric/internal": "dev", "@agoric/synthetic-chain": "^0.4.3", diff --git a/a3p-integration/proposals/p:upgrade-19/test-lib/mintHolder-helpers.js b/a3p-integration/proposals/p:upgrade-19/test-lib/mintHolder-helpers.js new file mode 100644 index 00000000000..9639fd98662 --- /dev/null +++ b/a3p-integration/proposals/p:upgrade-19/test-lib/mintHolder-helpers.js @@ -0,0 +1,162 @@ +/* eslint-env node */ + +import { + agoric, + evalBundles, + getDetailsMatchingVats, + getISTBalance, +} from '@agoric/synthetic-chain'; +import { makeVstorageKit, retryUntilCondition } from '@agoric/client-utils'; +import { readFile, writeFile } from 'node:fs/promises'; +import { psmSwap, snapshotAgoricNames } from './psm-lib.js'; + +/** + * @param {string} fileName base file name without .tjs extension + * @param {Record} replacements + */ +export const replaceTemplateValuesInFile = async (fileName, replacements) => { + let script = await readFile(`${fileName}.tjs`, 'utf-8'); + for (const [template, value] of Object.entries(replacements)) { + script = script.replaceAll(`{{${template}}}`, value); + } + await writeFile(`${fileName}.js`, script); +}; + +export const getPSMChildren = async (fetch, networkConfig) => { + const { + vstorage: { keys }, + } = await makeVstorageKit({ fetch }, networkConfig); + + const children = await keys('published.psm.IST'); + + return children; +}; + +export const getAssetList = async labelList => { + const assetList = []; + const { vbankAssets } = await snapshotAgoricNames(); + + // Determine the assets to consider based on labelList + const assetsToConsider = + labelList || Object.values(vbankAssets).map(asset => asset.issuerName); + + for (const label of assetsToConsider) { + if (label === 'IST') { + break; + } + + const vbankAsset = Object.values(vbankAssets).find( + asset => asset.issuerName === label, + ); + assert(vbankAsset, `vbankAsset not found for ${label}`); + + const { denom } = vbankAsset; + const mintHolderVat = `zcf-mintHolder-${label}`; + + assetList.push({ label, denom, mintHolderVat }); + } + + return assetList; +}; + +export const mintPayment = async (t, address, assetList, value) => { + const SUBMISSION_DIR = 'mint-payment'; + + for (const asset of assetList) { + const { label, denom } = asset; + const scaled = BigInt(parseInt(value, 10) * 1_000_000).toString(); + + await replaceTemplateValuesInFile(`${SUBMISSION_DIR}/send-script`, { + ADDRESS: address, + LABEL: label, + VALUE: scaled, + }); + + await evalBundles(SUBMISSION_DIR); + + const balance = await getISTBalance(address, denom); + + // Add to value the BLD provisioned to smart wallet + if (label === 'BLD') { + value += 10; + } + + t.is( + balance, + value, + `receiver ${denom} balance ${balance} is not ${value}`, + ); + } +}; + +export const swap = async (t, address, assetList, want) => { + for (const asset of assetList) { + const { label, denom } = asset; + + // TODO: remove condition after fixing issue #10655 + if (/^DAI/.test(label)) { + break; + } + + const pair = `IST.${label}`; + + const istBalanceBefore = await getISTBalance(address, 'uist'); + const anchorBalanceBefore = await getISTBalance(address, denom); + + const psmSwapIo = { + now: Date.now, + follow: agoric.follow, + setTimeout, + log: console.log, + }; + + await psmSwap( + address, + ['swap', '--pair', pair, '--wantMinted', want], + psmSwapIo, + ); + + const istBalanceAfter = await getISTBalance(address, 'uist'); + const anchorBalanceAfter = await getISTBalance(address, denom); + + t.is(istBalanceAfter, istBalanceBefore + want); + t.is(anchorBalanceAfter, anchorBalanceBefore - want); + } +}; + +const getIncarnationForAllVats = async assetList => { + const vatsIncarnation = {}; + + for (const asset of assetList) { + const { label, mintHolderVat } = asset; + const matchingVats = await getDetailsMatchingVats(label); + const expectedVat = matchingVats.find(vat => vat.vatName === mintHolderVat); + vatsIncarnation[label] = expectedVat.incarnation; + } + assert(Object.keys(vatsIncarnation).length === assetList.length); + + return vatsIncarnation; +}; + +const checkVatsUpgraded = (before, current) => { + for (const vatLabel in before) { + if (current[vatLabel] !== before[vatLabel] + 1) { + console.log(`${vatLabel} upgrade failed. `); + return false; + } + } + return true; +}; + +export const upgradeMintHolder = async (submissionPath, assetList) => { + const before = await getIncarnationForAllVats(assetList); + + await evalBundles(submissionPath); + + return retryUntilCondition( + async () => getIncarnationForAllVats(assetList), + current => checkVatsUpgraded(before, current), + `mintHolder upgrade not processed yet`, + { setTimeout, retryIntervalMs: 5000, maxRetries: 15 }, + ); +}; diff --git a/a3p-integration/proposals/p:upgrade-19/test-lib/psm-lib.js b/a3p-integration/proposals/p:upgrade-19/test-lib/psm-lib.js index 8f8d0abadc8..f98f5f6508c 100644 --- a/a3p-integration/proposals/p:upgrade-19/test-lib/psm-lib.js +++ b/a3p-integration/proposals/p:upgrade-19/test-lib/psm-lib.js @@ -3,10 +3,15 @@ import { execa } from 'execa'; import { getNetworkConfig } from 'agoric/src/helpers.js'; -import { waitUntilOfferResult } from '@agoric/client-utils'; +import { + waitUntilOfferResult, + makeFromBoard, + boardSlottingMarshaller, +} from '@agoric/client-utils'; import { deepMapObject } from '@agoric/internal'; import { agd, + agoric, agopsLocation, CHAINID, executeCommand, @@ -285,3 +290,23 @@ export const tryISTBalances = async (t, actualBalance, expectedBalance) => { const minFeeDebit = 200_000; t.is(actualBalance + minFeeDebit, expectedBalance); }; + +const fromBoard = makeFromBoard(); +const marshaller = boardSlottingMarshaller(fromBoard.convertSlotToVal); + +/** + * @param {string} path + */ +const objectFromVstorageEntries = async path => { + const rawEntries = await agoric.follow('-lF', `:${path}`, '-o', 'text'); + return Object.fromEntries(marshaller.fromCapData(JSON.parse(rawEntries))); +}; + +export const snapshotAgoricNames = async () => { + const [brands, instances, vbankAssets] = await Promise.all([ + objectFromVstorageEntries('published.agoricNames.brand'), + objectFromVstorageEntries('published.agoricNames.instance'), + objectFromVstorageEntries('published.agoricNames.vbankAsset'), + ]); + return { brands, instances, vbankAssets }; +}; diff --git a/a3p-integration/proposals/p:upgrade-19/test.sh b/a3p-integration/proposals/p:upgrade-19/test.sh index aa766db3a28..f42147483ef 100644 --- a/a3p-integration/proposals/p:upgrade-19/test.sh +++ b/a3p-integration/proposals/p:upgrade-19/test.sh @@ -2,6 +2,6 @@ yarn ava replaceFeeDistributor.test.js yarn ava upgradedBoard.test.js - +yarn ava mintHolder.test.js yarn ava provisionPool.test.js yarn ava agoricNames.test.js diff --git a/a3p-integration/proposals/p:upgrade-19/yarn.lock b/a3p-integration/proposals/p:upgrade-19/yarn.lock index a9c86ac69e3..29afd5a4438 100644 --- a/a3p-integration/proposals/p:upgrade-19/yarn.lock +++ b/a3p-integration/proposals/p:upgrade-19/yarn.lock @@ -27,21 +27,6 @@ __metadata: languageName: node linkType: hard -"@agoric/base-zone@npm:0.1.1-dev-02c06c4.0+02c06c4": - version: 0.1.1-dev-02c06c4.0 - resolution: "@agoric/base-zone@npm:0.1.1-dev-02c06c4.0" - dependencies: - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@endo/common": "npm:^1.2.7" - "@endo/errors": "npm:^1.2.7" - "@endo/exo": "npm:^1.5.6" - "@endo/far": "npm:^1.1.8" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - checksum: 10c0/54c4fc0855010809b09aa0558454639ecd87152af8c52024e07b1a46f38aeeef8d4642318eaf933b5219fc16e849a832d7a2c6d0e1827634dc6a64dd7530353b - languageName: node - linkType: hard - "@agoric/base-zone@npm:0.1.1-dev-1dd4589.0+1dd4589": version: 0.1.1-dev-1dd4589.0 resolution: "@agoric/base-zone@npm:0.1.1-dev-1dd4589.0" @@ -72,6 +57,21 @@ __metadata: languageName: node linkType: hard +"@agoric/base-zone@npm:0.1.1-dev-c1ae023.0+c1ae023": + version: 0.1.1-dev-c1ae023.0 + resolution: "@agoric/base-zone@npm:0.1.1-dev-c1ae023.0" + dependencies: + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@endo/common": "npm:^1.2.8" + "@endo/errors": "npm:^1.2.8" + "@endo/exo": "npm:^1.5.7" + "@endo/far": "npm:^1.1.9" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + checksum: 10c0/d7c75720d675c5f2fd524d0c597e83957fecee138392b3fc6dfa5610e8f301ccffecc8fbacb6c5a0700e4f5b9f95496029d0eb05320c92e23bbbeaa428ed9f87 + languageName: node + linkType: hard + "@agoric/base-zone@npm:0.1.1-dev-e596a01.0+e596a01": version: 0.1.1-dev-e596a01.0 resolution: "@agoric/base-zone@npm:0.1.1-dev-e596a01.0" @@ -101,24 +101,24 @@ __metadata: languageName: node linkType: hard -"@agoric/casting@npm:0.4.3-dev-02c06c4.0+02c06c4": - version: 0.4.3-dev-02c06c4.0 - resolution: "@agoric/casting@npm:0.4.3-dev-02c06c4.0" +"@agoric/casting@npm:0.4.3-dev-c1ae023.0+c1ae023": + version: 0.4.3-dev-c1ae023.0 + resolution: "@agoric/casting@npm:0.4.3-dev-c1ae023.0" dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" "@cosmjs/encoding": "npm:^0.32.3" "@cosmjs/proto-signing": "npm:^0.32.3" "@cosmjs/stargate": "npm:^0.32.3" "@cosmjs/tendermint-rpc": "npm:^0.32.3" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/init": "npm:^1.1.6" - "@endo/lockdown": "npm:^1.0.12" - "@endo/marshal": "npm:^1.6.1" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/e0fbef620ff0b358961f23d0545f962e2255dd0c490ee0c2635ba47fbe77f5b0f0c1b64a2bd638ca0030d9e81a099253feeef74b236652a8cb80dbc4932f4e08 + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/init": "npm:^1.1.7" + "@endo/lockdown": "npm:^1.0.13" + "@endo/marshal": "npm:^1.6.2" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/e4a8985d94ad49b785102f9db08415aaf07052178974dd2007fa0e359c50f83b9fead0934e9f0e7e81090dddde2c0e1b42e6f9b149989ec29e6887d980153dd6 languageName: node linkType: hard @@ -143,27 +143,6 @@ __metadata: languageName: node linkType: hard -"@agoric/client-utils@npm:0.1.1-dev-02c06c4.0": - version: 0.1.1-dev-02c06c4.0 - resolution: "@agoric/client-utils@npm:0.1.1-dev-02c06c4.0" - dependencies: - "@agoric/casting": "npm:0.4.3-dev-02c06c4.0+02c06c4" - "@agoric/ertp": "npm:0.16.3-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/smart-wallet": "npm:0.5.4-dev-02c06c4.0+02c06c4" - "@agoric/vats": "npm:0.15.2-dev-02c06c4.0+02c06c4" - "@cosmjs/stargate": "npm:^0.32.3" - "@cosmjs/tendermint-rpc": "npm:^0.32.3" - "@endo/common": "npm:^1.2.7" - "@endo/errors": "npm:^1.2.7" - "@endo/marshal": "npm:^1.6.1" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/75009c017319e9d641d2653ee582307185363bb54a091aad3d85cbf59e514e3243c05f06e4ef7dd96bd5de1a702bd037e15bf03331c41333ce089664de13966f - languageName: node - linkType: hard - "@agoric/client-utils@npm:0.1.1-dev-e596a01.0+e596a01": version: 0.1.1-dev-e596a01.0 resolution: "@agoric/client-utils@npm:0.1.1-dev-e596a01.0" @@ -185,42 +164,44 @@ __metadata: languageName: node linkType: hard -"@agoric/cosmic-proto@npm:0.4.1-dev-02c06c4.0+02c06c4": - version: 0.4.1-dev-02c06c4.0 - resolution: "@agoric/cosmic-proto@npm:0.4.1-dev-02c06c4.0" +"@agoric/client-utils@npm:dev": + version: 0.1.1-dev-c1ae023.0 + resolution: "@agoric/client-utils@npm:0.1.1-dev-c1ae023.0" dependencies: - "@endo/base64": "npm:^1.0.8" - "@endo/init": "npm:^1.1.6" - checksum: 10c0/a691d32d5aeb4152ee75ed1a9dd6fcaa49500da939fb3ca8a3b2949b5c3d67afe5ac27f824966850be42831e4bba7a0c83702fc525da800a5a1721ec2566548a + "@agoric/casting": "npm:0.4.3-dev-c1ae023.0+c1ae023" + "@agoric/ertp": "npm:0.16.3-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/smart-wallet": "npm:0.5.4-dev-c1ae023.0+c1ae023" + "@agoric/vats": "npm:0.15.2-dev-c1ae023.0+c1ae023" + "@cosmjs/stargate": "npm:^0.32.3" + "@cosmjs/tendermint-rpc": "npm:^0.32.3" + "@endo/common": "npm:^1.2.8" + "@endo/errors": "npm:^1.2.8" + "@endo/marshal": "npm:^1.6.2" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/be944d730e4b3c5a0f811d999a9a707f90c447ef8a35f5fabf6db104671252c1c549d8c62c297508de40406d8a8965e8650b7cd827271fd9f6cbad2291a2e9ed languageName: node linkType: hard -"@agoric/cosmic-proto@npm:0.4.1-dev-e596a01.0+e596a01": - version: 0.4.1-dev-e596a01.0 - resolution: "@agoric/cosmic-proto@npm:0.4.1-dev-e596a01.0" +"@agoric/cosmic-proto@npm:0.4.1-dev-c1ae023.0+c1ae023": + version: 0.4.1-dev-c1ae023.0 + resolution: "@agoric/cosmic-proto@npm:0.4.1-dev-c1ae023.0" dependencies: "@endo/base64": "npm:^1.0.9" "@endo/init": "npm:^1.1.7" - checksum: 10c0/2048e794ec9a346fb3a618b1b64d54985241967930b8b34c9220316b206fca4d3ecdf738e23e56021d45c3818f4513842e6d4c4d917a537dad59c13651d0ae35 + checksum: 10c0/78571d7f2c64df92d7f186ffad8c1e4c31c428495344555dc38ce74fc66397a4ac44f8d121b0929e6bb64a919bd7ecac708d04b4050021d69c68e388a2ea2de7 languageName: node linkType: hard -"@agoric/ertp@npm:0.16.3-dev-02c06c4.0+02c06c4": - version: 0.16.3-dev-02c06c4.0 - resolution: "@agoric/ertp@npm:0.16.3-dev-02c06c4.0" +"@agoric/cosmic-proto@npm:0.4.1-dev-e596a01.0+e596a01": + version: 0.4.1-dev-e596a01.0 + resolution: "@agoric/cosmic-proto@npm:0.4.1-dev-e596a01.0" dependencies: - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/zone": "npm:0.2.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/079356fee7cb840873effc2a78b3659d1979f57f3aecdbbaea5dc876f506671d8d6a4e8b169f739457e7fb1e96e5c1e3806d88fab2cec8cd2c4b370d7a70aeef + "@endo/base64": "npm:^1.0.9" + "@endo/init": "npm:^1.1.7" + checksum: 10c0/2048e794ec9a346fb3a618b1b64d54985241967930b8b34c9220316b206fca4d3ecdf738e23e56021d45c3818f4513842e6d4c4d917a537dad59c13651d0ae35 languageName: node linkType: hard @@ -243,6 +224,25 @@ __metadata: languageName: node linkType: hard +"@agoric/ertp@npm:0.16.3-dev-c1ae023.0+c1ae023": + version: 0.16.3-dev-c1ae023.0 + resolution: "@agoric/ertp@npm:0.16.3-dev-c1ae023.0" + dependencies: + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/zone": "npm:0.2.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/5a437d6a2b6b418dd016407c2095d7d98415818c422c3c53db217d99b3bbb2e476f5b7e9decbc628b82c8e85d2da939cf3846248eeb5d688b4789b21a1118194 + languageName: node + linkType: hard + "@agoric/ertp@npm:0.16.3-dev-e596a01.0+e596a01": version: 0.16.3-dev-e596a01.0 resolution: "@agoric/ertp@npm:0.16.3-dev-e596a01.0" @@ -262,27 +262,27 @@ __metadata: languageName: node linkType: hard -"@agoric/governance@npm:0.10.4-dev-02c06c4.0+02c06c4": - version: 0.10.4-dev-02c06c4.0 - resolution: "@agoric/governance@npm:0.10.4-dev-02c06c4.0" +"@agoric/governance@npm:0.10.4-dev-c1ae023.0+c1ae023": + version: 0.10.4-dev-c1ae023.0 + resolution: "@agoric/governance@npm:0.10.4-dev-c1ae023.0" dependencies: - "@agoric/ertp": "npm:0.16.3-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/time": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/zoe": "npm:0.26.3-dev-02c06c4.0+02c06c4" - "@endo/bundle-source": "npm:^3.4.2" - "@endo/captp": "npm:^4.4.2" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/promise-kit": "npm:^1.1.7" + "@agoric/ertp": "npm:0.16.3-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/time": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/zoe": "npm:0.26.3-dev-c1ae023.0+c1ae023" + "@endo/bundle-source": "npm:^3.5.0" + "@endo/captp": "npm:^4.4.3" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/promise-kit": "npm:^1.1.8" import-meta-resolve: "npm:^2.2.1" - checksum: 10c0/888427200f47bc141ccc4dd07801d6b62c265edaae62abccf81d0bc0f4181fe544942d052a0f1f4a69e1c71fed287f60957b1667b1d951d4c61a1abfeec92c60 + checksum: 10c0/445a41d4d2f226bbb99ad274d94d9f90cd4b4277db0428cc62046d7fdc508bbac6745859dfc4d16159a7e83629f501aa22a0752b99481a99b76e7d31f628290c languageName: node linkType: hard @@ -336,11 +336,11 @@ __metadata: languageName: node linkType: hard -"@agoric/internal@npm:0.3.3-dev-02c06c4.0+02c06c4": - version: 0.3.3-dev-02c06c4.0 - resolution: "@agoric/internal@npm:0.3.3-dev-02c06c4.0" +"@agoric/internal@npm:0.3.3-dev-3b799b8.0+3b799b8": + version: 0.3.3-dev-3b799b8.0 + resolution: "@agoric/internal@npm:0.3.3-dev-3b799b8.0" dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-02c06c4.0+02c06c4" + "@agoric/base-zone": "npm:0.1.1-dev-3b799b8.0+3b799b8" "@endo/common": "npm:^1.2.7" "@endo/errors": "npm:^1.2.7" "@endo/far": "npm:^1.1.8" @@ -352,27 +352,27 @@ __metadata: "@endo/stream": "npm:^1.2.7" anylogger: "npm:^0.21.0" jessie.js: "npm:^0.3.4" - checksum: 10c0/ec9ab609f0e55c777748e870f7f00e9e19c2f41b9ac0967d0f98ebf1559aa59b69cbfa4f2b95c698187bc1d6a578ff3b67e1c6e3fba7c501bcf4567c3a52e122 + checksum: 10c0/332369a9acb41e46a579c9e0d084a12e16a78ad71f794f10d631235694281580b06ea88e25bf31d9eadc353b9c8d62e561232a21bb4c45f17c41057d0fb4c171 languageName: node linkType: hard -"@agoric/internal@npm:0.3.3-dev-3b799b8.0+3b799b8": - version: 0.3.3-dev-3b799b8.0 - resolution: "@agoric/internal@npm:0.3.3-dev-3b799b8.0" +"@agoric/internal@npm:0.3.3-dev-c1ae023.0+c1ae023": + version: 0.3.3-dev-c1ae023.0 + resolution: "@agoric/internal@npm:0.3.3-dev-c1ae023.0" dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-3b799b8.0+3b799b8" - "@endo/common": "npm:^1.2.7" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/init": "npm:^1.1.6" - "@endo/marshal": "npm:^1.6.1" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - "@endo/stream": "npm:^1.2.7" + "@agoric/base-zone": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@endo/common": "npm:^1.2.8" + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/init": "npm:^1.1.7" + "@endo/marshal": "npm:^1.6.2" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + "@endo/stream": "npm:^1.2.8" anylogger: "npm:^0.21.0" jessie.js: "npm:^0.3.4" - checksum: 10c0/332369a9acb41e46a579c9e0d084a12e16a78ad71f794f10d631235694281580b06ea88e25bf31d9eadc353b9c8d62e561232a21bb4c45f17c41057d0fb4c171 + checksum: 10c0/6ef8c160be33be88adefa67a861fb0758d03933a4bcc6f225e3b4e41c592553555fc9d477c1731e9ce86d28e2db49c72053f53188a199ab0f8c81a06423adc2c languageName: node linkType: hard @@ -416,17 +416,6 @@ __metadata: languageName: node linkType: hard -"@agoric/kmarshal@npm:0.1.1-dev-02c06c4.0+02c06c4": - version: 0.1.1-dev-02c06c4.0 - resolution: "@agoric/kmarshal@npm:0.1.1-dev-02c06c4.0" - dependencies: - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/marshal": "npm:^1.6.1" - checksum: 10c0/f7a124e2d9876edeb72fe8d66f090acb7fbbb7ad8d6bbcad3d60a25e7eee98e005a52222d3c570b1e9ecc504dd7bea4444232fe756824c97000bba439ea142ee - languageName: node - linkType: hard - "@agoric/kmarshal@npm:0.1.1-dev-3b799b8.0+3b799b8": version: 0.1.1-dev-3b799b8.0 resolution: "@agoric/kmarshal@npm:0.1.1-dev-3b799b8.0" @@ -438,6 +427,17 @@ __metadata: languageName: node linkType: hard +"@agoric/kmarshal@npm:0.1.1-dev-c1ae023.0+c1ae023": + version: 0.1.1-dev-c1ae023.0 + resolution: "@agoric/kmarshal@npm:0.1.1-dev-c1ae023.0" + dependencies: + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/marshal": "npm:^1.6.2" + checksum: 10c0/5f4c1784fa4fa6de50f288722794ac0c98d0719e3558bc9147b726014a72dc3222a68f4c7f40e42f170e4b59481579a4d318e3cffb665720dafc23c80915ec6b + languageName: node + linkType: hard + "@agoric/kmarshal@npm:0.1.1-dev-e596a01.0+e596a01": version: 0.1.1-dev-e596a01.0 resolution: "@agoric/kmarshal@npm:0.1.1-dev-e596a01.0" @@ -449,20 +449,20 @@ __metadata: languageName: node linkType: hard -"@agoric/network@npm:0.1.1-dev-02c06c4.0+02c06c4": - version: 0.1.1-dev-02c06c4.0 - resolution: "@agoric/network@npm:0.1.1-dev-02c06c4.0" +"@agoric/network@npm:0.1.1-dev-c1ae023.0+c1ae023": + version: 0.1.1-dev-c1ae023.0 + resolution: "@agoric/network@npm:0.1.1-dev-c1ae023.0" dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@endo/base64": "npm:^1.0.8" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/0e14d617b90a1bf63ebe5776182f6cab2b87c9f18e951740ce7cddcdd418d630835a21c88af3910c2d73b5b6dc28a455a8f32dc15f66f48089f414916f5c541e + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@endo/base64": "npm:^1.0.9" + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/93fd60ad6a0ce650427853677be076c77ce00d3201f29ec0922eb5fd38ce5ec2316fb9a564a76d3fae809299ef193e80109b89b79c4191ddb9525e5e4cb33302 languageName: node linkType: hard @@ -483,21 +483,6 @@ __metadata: languageName: node linkType: hard -"@agoric/notifier@npm:0.6.3-dev-02c06c4.0+02c06c4": - version: 0.6.3-dev-02c06c4.0 - resolution: "@agoric/notifier@npm:0.6.3-dev-02c06c4.0" - dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/marshal": "npm:^1.6.1" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/6b4698c179c1483231124c6f6abc535bf86cef0bf61f3db05821031e06a3c63e7676fbba88170c2fb4716cd6dd96dc18b5c90d10b04aeee89e7be80c3b825e92 - languageName: node - linkType: hard - "@agoric/notifier@npm:0.6.3-dev-3b799b8.0+3b799b8": version: 0.6.3-dev-3b799b8.0 resolution: "@agoric/notifier@npm:0.6.3-dev-3b799b8.0" @@ -513,6 +498,21 @@ __metadata: languageName: node linkType: hard +"@agoric/notifier@npm:0.6.3-dev-c1ae023.0+c1ae023": + version: 0.6.3-dev-c1ae023.0 + resolution: "@agoric/notifier@npm:0.6.3-dev-c1ae023.0" + dependencies: + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/marshal": "npm:^1.6.2" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/b810e7c98305e3e398fc1b97fa611c48b6af9a0144a865d357c2e5ac10cb60fc55bd01d87f8165fbc09c009166c7bc3a0513e2b1bf35e0742c0607e0c6579060 + languageName: node + linkType: hard + "@agoric/notifier@npm:0.6.3-dev-e596a01.0+e596a01": version: 0.6.3-dev-e596a01.0 resolution: "@agoric/notifier@npm:0.6.3-dev-e596a01.0" @@ -528,26 +528,26 @@ __metadata: languageName: node linkType: hard -"@agoric/smart-wallet@npm:0.5.4-dev-02c06c4.0+02c06c4": - version: 0.5.4-dev-02c06c4.0 - resolution: "@agoric/smart-wallet@npm:0.5.4-dev-02c06c4.0" +"@agoric/smart-wallet@npm:0.5.4-dev-c1ae023.0+c1ae023": + version: 0.5.4-dev-c1ae023.0 + resolution: "@agoric/smart-wallet@npm:0.5.4-dev-c1ae023.0" dependencies: - "@agoric/ertp": "npm:0.16.3-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/vats": "npm:0.15.2-dev-02c06c4.0+02c06c4" - "@agoric/vow": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/zoe": "npm:0.26.3-dev-02c06c4.0+02c06c4" - "@agoric/zone": "npm:0.2.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/a2bc7bf868bdc578f4c2251f04119b1e72eeae5ff14334eeffbd8bfd8706b4ded203e2f239d8a85283fd06dfa6910c9b01b9a7d55de0fe6767c0f729c3915034 + "@agoric/ertp": "npm:0.16.3-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/vats": "npm:0.15.2-dev-c1ae023.0+c1ae023" + "@agoric/vow": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/zoe": "npm:0.26.3-dev-c1ae023.0+c1ae023" + "@agoric/zone": "npm:0.2.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/94096186933d72b4db40e965adcef8d2e36b4917e6f4e1ca5d103d949c201daeaa16ad4d48ce121aec7048defb6177f75270418f175ae7ba390f169e8e37c380 languageName: node linkType: hard @@ -574,19 +574,6 @@ __metadata: languageName: node linkType: hard -"@agoric/store@npm:0.9.3-dev-02c06c4.0+02c06c4": - version: 0.9.3-dev-02c06c4.0 - resolution: "@agoric/store@npm:0.9.3-dev-02c06c4.0" - dependencies: - "@endo/errors": "npm:^1.2.7" - "@endo/exo": "npm:^1.5.6" - "@endo/marshal": "npm:^1.6.1" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - checksum: 10c0/975d6d7f72bc3e0bb9087a1998c4c6092504cf084d1615a74d7bd7ea10d9032d5a0845e24399f787a7a9b1974e00a61a995f73d47bf8a8444ac1d9ed8aeb94a6 - languageName: node - linkType: hard - "@agoric/store@npm:0.9.3-dev-1dd4589.0+1dd4589": version: 0.9.3-dev-1dd4589.0 resolution: "@agoric/store@npm:0.9.3-dev-1dd4589.0" @@ -613,31 +600,29 @@ __metadata: languageName: node linkType: hard -"@agoric/store@npm:0.9.3-dev-e596a01.0+e596a01": - version: 0.9.3-dev-e596a01.0 - resolution: "@agoric/store@npm:0.9.3-dev-e596a01.0" +"@agoric/store@npm:0.9.3-dev-c1ae023.0+c1ae023": + version: 0.9.3-dev-c1ae023.0 + resolution: "@agoric/store@npm:0.9.3-dev-c1ae023.0" dependencies: "@endo/errors": "npm:^1.2.8" "@endo/exo": "npm:^1.5.7" "@endo/marshal": "npm:^1.6.2" "@endo/pass-style": "npm:^1.4.7" "@endo/patterns": "npm:^1.4.7" - checksum: 10c0/b931aa2566d2ef2fea087938c34a79a6682a15f0fc9a5084e73c671d970f22ab3a1040febab4f7f0ae793858597834d76840b1d9c20a89048b725e3b5443b84f + checksum: 10c0/9fd6d5464906144140a868d38e63d1ee2f8f06240a8ba2e71ed73eb7df5ce9c03a74a79290b4dc2b2e4c3c3d59ba07228f7019965cf234a4178b815f8861f002 languageName: node linkType: hard -"@agoric/swing-store@npm:0.9.2-dev-02c06c4.0+02c06c4": - version: 0.9.2-dev-02c06c4.0 - resolution: "@agoric/swing-store@npm:0.9.2-dev-02c06c4.0" +"@agoric/store@npm:0.9.3-dev-e596a01.0+e596a01": + version: 0.9.3-dev-e596a01.0 + resolution: "@agoric/store@npm:0.9.3-dev-e596a01.0" dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@endo/base64": "npm:^1.0.8" - "@endo/bundle-source": "npm:^3.4.2" - "@endo/check-bundle": "npm:^1.0.11" - "@endo/errors": "npm:^1.2.7" - "@endo/nat": "npm:^5.0.12" - better-sqlite3: "npm:^9.1.1" - checksum: 10c0/71fd32035b20398c2a28eb8c7ada724c601cde1408f2ffadcbf6b06c06899ce9d0e595f75a570e9cc466c864c5ea29bdddf2b4a4f07e9031496588ea5904fabe + "@endo/errors": "npm:^1.2.8" + "@endo/exo": "npm:^1.5.7" + "@endo/marshal": "npm:^1.6.2" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + checksum: 10c0/b931aa2566d2ef2fea087938c34a79a6682a15f0fc9a5084e73c671d970f22ab3a1040febab4f7f0ae793858597834d76840b1d9c20a89048b725e3b5443b84f languageName: node linkType: hard @@ -656,6 +641,21 @@ __metadata: languageName: node linkType: hard +"@agoric/swing-store@npm:0.9.2-dev-c1ae023.0+c1ae023": + version: 0.9.2-dev-c1ae023.0 + resolution: "@agoric/swing-store@npm:0.9.2-dev-c1ae023.0" + dependencies: + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@endo/base64": "npm:^1.0.9" + "@endo/bundle-source": "npm:^3.5.0" + "@endo/check-bundle": "npm:^1.0.12" + "@endo/errors": "npm:^1.2.8" + "@endo/nat": "npm:^5.0.13" + better-sqlite3: "npm:^9.1.1" + checksum: 10c0/56adf70976c1c7f6f2437045fdd2c10f128b0d79224f83aed842b8b42f2253328d24151817748e2d4bc8c1f70a840d254646423a69496ff25e049bc3909233d5 + languageName: node + linkType: hard + "@agoric/swing-store@npm:0.9.2-dev-e596a01.0+e596a01": version: 0.9.2-dev-e596a01.0 resolution: "@agoric/swing-store@npm:0.9.2-dev-e596a01.0" @@ -671,27 +671,6 @@ __metadata: languageName: node linkType: hard -"@agoric/swingset-liveslots@npm:0.10.3-dev-02c06c4.0+02c06c4": - version: 0.10.3-dev-02c06c4.0 - resolution: "@agoric/swingset-liveslots@npm:0.10.3-dev-02c06c4.0" - dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@endo/env-options": "npm:^1.1.7" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/exo": "npm:^1.5.6" - "@endo/far": "npm:^1.1.8" - "@endo/init": "npm:^1.1.6" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/0c0b7a9ff81b173b6610ef4b7af296ae1b1dbb753d4f2ef36e4b276aeb8e4a54a7a53e7293b051f3e196e8175e085db71728e986f7d226e90a08f9c7eb25b874 - languageName: node - linkType: hard - "@agoric/swingset-liveslots@npm:0.10.3-dev-3b799b8.0+3b799b8": version: 0.10.3-dev-3b799b8.0 resolution: "@agoric/swingset-liveslots@npm:0.10.3-dev-3b799b8.0" @@ -713,6 +692,27 @@ __metadata: languageName: node linkType: hard +"@agoric/swingset-liveslots@npm:0.10.3-dev-c1ae023.0+c1ae023": + version: 0.10.3-dev-c1ae023.0 + resolution: "@agoric/swingset-liveslots@npm:0.10.3-dev-c1ae023.0" + dependencies: + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@endo/env-options": "npm:^1.1.8" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/exo": "npm:^1.5.7" + "@endo/far": "npm:^1.1.9" + "@endo/init": "npm:^1.1.7" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/a44a74766ce6be12d65f7328a544993a07a2b3b74f8f998c48c085a39b38746644005d285cb5d3e6282b1e327e7e809c9cd23e36667da2b7f11926808000b1f0 + languageName: node + linkType: hard + "@agoric/swingset-liveslots@npm:0.10.3-dev-e596a01.0+e596a01": version: 0.10.3-dev-e596a01.0 resolution: "@agoric/swingset-liveslots@npm:0.10.3-dev-e596a01.0" @@ -734,19 +734,19 @@ __metadata: languageName: node linkType: hard -"@agoric/swingset-vat@npm:0.32.3-dev-02c06c4.0+02c06c4": - version: 0.32.3-dev-02c06c4.0 - resolution: "@agoric/swingset-vat@npm:0.32.3-dev-02c06c4.0" +"@agoric/swingset-vat@npm:0.32.3-dev-3b799b8.0+3b799b8": + version: 0.32.3-dev-3b799b8.0 + resolution: "@agoric/swingset-vat@npm:0.32.3-dev-3b799b8.0" dependencies: - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/kmarshal": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/swing-store": "npm:0.9.2-dev-02c06c4.0+02c06c4" - "@agoric/swingset-liveslots": "npm:0.10.3-dev-02c06c4.0+02c06c4" - "@agoric/swingset-xsnap-supervisor": "npm:0.10.3-dev-02c06c4.0+02c06c4" - "@agoric/time": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/xsnap-lockdown": "npm:0.14.1-dev-02c06c4.0+02c06c4" + "@agoric/internal": "npm:0.3.3-dev-3b799b8.0+3b799b8" + "@agoric/kmarshal": "npm:0.1.1-dev-3b799b8.0+3b799b8" + "@agoric/store": "npm:0.9.3-dev-3b799b8.0+3b799b8" + "@agoric/swing-store": "npm:0.9.2-dev-3b799b8.0+3b799b8" + "@agoric/swingset-liveslots": "npm:0.10.3-dev-3b799b8.0+3b799b8" + "@agoric/swingset-xsnap-supervisor": "npm:0.10.3-dev-3b799b8.0+3b799b8" + "@agoric/time": "npm:0.3.3-dev-3b799b8.0+3b799b8" + "@agoric/vat-data": "npm:0.5.3-dev-3b799b8.0+3b799b8" + "@agoric/xsnap-lockdown": "npm:0.14.1-dev-3b799b8.0+3b799b8" "@endo/base64": "npm:^1.0.8" "@endo/bundle-source": "npm:^3.4.2" "@endo/captp": "npm:^4.4.2" @@ -778,41 +778,41 @@ __metadata: ava: ^5.3.0 bin: vat: bin/vat - checksum: 10c0/43e4f64c6b157c7f343cd1a9a710061d8d81926986b5aec43d7b79e3a7b4ca46ab309285104767b780c6877f64ae79d8ecbb1847b84541a0f26cc38999e94ce4 + checksum: 10c0/661426721b4106f9e51bc5f86858b166a24b3954429ec8cfe20f3a6650017807c4af12a78b9f64aa549b317356d1a52f44aee9137dde738f74d077d789dad482 languageName: node linkType: hard -"@agoric/swingset-vat@npm:0.32.3-dev-3b799b8.0+3b799b8": - version: 0.32.3-dev-3b799b8.0 - resolution: "@agoric/swingset-vat@npm:0.32.3-dev-3b799b8.0" +"@agoric/swingset-vat@npm:0.32.3-dev-c1ae023.0+c1ae023": + version: 0.32.3-dev-c1ae023.0 + resolution: "@agoric/swingset-vat@npm:0.32.3-dev-c1ae023.0" dependencies: - "@agoric/internal": "npm:0.3.3-dev-3b799b8.0+3b799b8" - "@agoric/kmarshal": "npm:0.1.1-dev-3b799b8.0+3b799b8" - "@agoric/store": "npm:0.9.3-dev-3b799b8.0+3b799b8" - "@agoric/swing-store": "npm:0.9.2-dev-3b799b8.0+3b799b8" - "@agoric/swingset-liveslots": "npm:0.10.3-dev-3b799b8.0+3b799b8" - "@agoric/swingset-xsnap-supervisor": "npm:0.10.3-dev-3b799b8.0+3b799b8" - "@agoric/time": "npm:0.3.3-dev-3b799b8.0+3b799b8" - "@agoric/vat-data": "npm:0.5.3-dev-3b799b8.0+3b799b8" - "@agoric/xsnap-lockdown": "npm:0.14.1-dev-3b799b8.0+3b799b8" - "@endo/base64": "npm:^1.0.8" - "@endo/bundle-source": "npm:^3.4.2" - "@endo/captp": "npm:^4.4.2" - "@endo/check-bundle": "npm:^1.0.11" - "@endo/compartment-mapper": "npm:^1.3.1" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/import-bundle": "npm:^1.3.1" - "@endo/init": "npm:^1.1.6" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - "@endo/ses-ava": "npm:^1.2.7" - "@endo/stream": "npm:^1.2.7" - "@endo/zip": "npm:^1.0.8" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/kmarshal": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/swing-store": "npm:0.9.2-dev-c1ae023.0+c1ae023" + "@agoric/swingset-liveslots": "npm:0.10.3-dev-c1ae023.0+c1ae023" + "@agoric/swingset-xsnap-supervisor": "npm:0.10.3-dev-c1ae023.0+c1ae023" + "@agoric/time": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/xsnap-lockdown": "npm:0.14.1-dev-c1ae023.0+c1ae023" + "@endo/base64": "npm:^1.0.9" + "@endo/bundle-source": "npm:^3.5.0" + "@endo/captp": "npm:^4.4.3" + "@endo/check-bundle": "npm:^1.0.12" + "@endo/compartment-mapper": "npm:^1.4.0" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/import-bundle": "npm:^1.3.2" + "@endo/init": "npm:^1.1.7" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + "@endo/ses-ava": "npm:^1.2.8" + "@endo/stream": "npm:^1.2.8" + "@endo/zip": "npm:^1.0.9" ansi-styles: "npm:^6.2.1" anylogger: "npm:^0.21.0" better-sqlite3: "npm:^9.1.1" @@ -826,7 +826,7 @@ __metadata: ava: ^5.3.0 bin: vat: bin/vat - checksum: 10c0/661426721b4106f9e51bc5f86858b166a24b3954429ec8cfe20f3a6650017807c4af12a78b9f64aa549b317356d1a52f44aee9137dde738f74d077d789dad482 + checksum: 10c0/66482c449eeccd00167dec73899a5c510719620eba2ad457e77c04790b3573e8e82138e4d362f1b4ee859719278bdb49835df0007318d216ce6e54e67d08ee95 languageName: node linkType: hard @@ -878,13 +878,6 @@ __metadata: languageName: node linkType: hard -"@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-02c06c4.0+02c06c4": - version: 0.10.3-dev-02c06c4.0 - resolution: "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-02c06c4.0" - checksum: 10c0/a269373b02fcfcb10a47d601ef13ee1c01c2a8666bed7119e0b6f47027ce5f8d2321d5aaf6d22cbd949db69f4403cfda4d439d84c27bb4d7dd0fe421173fcb58 - languageName: node - linkType: hard - "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-3b799b8.0+3b799b8": version: 0.10.3-dev-3b799b8.0 resolution: "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-3b799b8.0" @@ -892,6 +885,13 @@ __metadata: languageName: node linkType: hard +"@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-c1ae023.0+c1ae023": + version: 0.10.3-dev-c1ae023.0 + resolution: "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-c1ae023.0" + checksum: 10c0/9f5b3bfe1f76f74f0ab605a67a8c822ba76fd80f7da9a13ee7933425effce76877240b5bd155a677c20740259bab1f0087131784035ef8a85e1278d718450589 + languageName: node + linkType: hard + "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-e596a01.0+e596a01": version: 0.10.3-dev-e596a01.0 resolution: "@agoric/swingset-xsnap-supervisor@npm:0.10.3-dev-e596a01.0" @@ -914,18 +914,6 @@ __metadata: languageName: node linkType: hard -"@agoric/time@npm:0.3.3-dev-02c06c4.0+02c06c4": - version: 0.3.3-dev-02c06c4.0 - resolution: "@agoric/time@npm:0.3.3-dev-02c06c4.0" - dependencies: - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/nat": "npm:^5.0.12" - "@endo/patterns": "npm:^1.4.6" - checksum: 10c0/ffe92b98f6f0f0d88aa1ecc2782775af94e77c4ba23f55005c5d201abb7ecd7b75dcb703f5b11e13588ad15e643fff2a42ebe74b0934872446e6647ff8caf3ef - languageName: node - linkType: hard - "@agoric/time@npm:0.3.3-dev-3b799b8.0+3b799b8": version: 0.3.3-dev-3b799b8.0 resolution: "@agoric/time@npm:0.3.3-dev-3b799b8.0" @@ -938,6 +926,18 @@ __metadata: languageName: node linkType: hard +"@agoric/time@npm:0.3.3-dev-c1ae023.0+c1ae023": + version: 0.3.3-dev-c1ae023.0 + resolution: "@agoric/time@npm:0.3.3-dev-c1ae023.0" + dependencies: + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/nat": "npm:^5.0.13" + "@endo/patterns": "npm:^1.4.7" + checksum: 10c0/f4c6c900f25eda4bc32ee045f0b87ad1f3b38aa400047d51fbac534aa69bceaaf4f07130c539276a96c51a885394847ccd0a42da950722c58276998bdd7555ed + languageName: node + linkType: hard + "@agoric/time@npm:0.3.3-dev-e596a01.0+e596a01": version: 0.3.3-dev-e596a01.0 resolution: "@agoric/time@npm:0.3.3-dev-e596a01.0" @@ -950,20 +950,6 @@ __metadata: languageName: node linkType: hard -"@agoric/vat-data@npm:0.5.3-dev-02c06c4.0+02c06c4": - version: 0.5.3-dev-02c06c4.0 - resolution: "@agoric/vat-data@npm:0.5.3-dev-02c06c4.0" - dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/swingset-liveslots": "npm:0.10.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/exo": "npm:^1.5.6" - "@endo/patterns": "npm:^1.4.6" - checksum: 10c0/b381d8e22d6d51b3dbad23820e61c97e269117c822679405b149882269e26366f3f15fff4520ca3d72ceb30bdad3fa713599573235335220689e0c37f040af5a - languageName: node - linkType: hard - "@agoric/vat-data@npm:0.5.3-dev-3b799b8.0+3b799b8": version: 0.5.3-dev-3b799b8.0 resolution: "@agoric/vat-data@npm:0.5.3-dev-3b799b8.0" @@ -978,6 +964,20 @@ __metadata: languageName: node linkType: hard +"@agoric/vat-data@npm:0.5.3-dev-c1ae023.0+c1ae023": + version: 0.5.3-dev-c1ae023.0 + resolution: "@agoric/vat-data@npm:0.5.3-dev-c1ae023.0" + dependencies: + "@agoric/base-zone": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/swingset-liveslots": "npm:0.10.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/exo": "npm:^1.5.7" + "@endo/patterns": "npm:^1.4.7" + checksum: 10c0/009a8ca0f385770d4be37f8db2970ca03b035717193c18e43ce2f8ea6c212fba9a6f925dd376971e449416c6c3569178446318ecebdfc22016b03a50aed3fea4 + languageName: node + linkType: hard + "@agoric/vat-data@npm:0.5.3-dev-e596a01.0+e596a01": version: 0.5.3-dev-e596a01.0 resolution: "@agoric/vat-data@npm:0.5.3-dev-e596a01.0" @@ -992,34 +992,34 @@ __metadata: languageName: node linkType: hard -"@agoric/vats@npm:0.15.2-dev-02c06c4.0+02c06c4": - version: 0.15.2-dev-02c06c4.0 - resolution: "@agoric/vats@npm:0.15.2-dev-02c06c4.0" - dependencies: - "@agoric/cosmic-proto": "npm:0.4.1-dev-02c06c4.0+02c06c4" - "@agoric/ertp": "npm:0.16.3-dev-02c06c4.0+02c06c4" - "@agoric/governance": "npm:0.10.4-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/network": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/swingset-vat": "npm:0.32.3-dev-02c06c4.0+02c06c4" - "@agoric/time": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/vow": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/zoe": "npm:0.26.3-dev-02c06c4.0+02c06c4" - "@agoric/zone": "npm:0.2.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/import-bundle": "npm:^1.3.1" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" +"@agoric/vats@npm:0.15.2-dev-c1ae023.0+c1ae023": + version: 0.15.2-dev-c1ae023.0 + resolution: "@agoric/vats@npm:0.15.2-dev-c1ae023.0" + dependencies: + "@agoric/cosmic-proto": "npm:0.4.1-dev-c1ae023.0+c1ae023" + "@agoric/ertp": "npm:0.16.3-dev-c1ae023.0+c1ae023" + "@agoric/governance": "npm:0.10.4-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/network": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/swingset-vat": "npm:0.32.3-dev-c1ae023.0+c1ae023" + "@agoric/time": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/vow": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/zoe": "npm:0.26.3-dev-c1ae023.0+c1ae023" + "@agoric/zone": "npm:0.2.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/import-bundle": "npm:^1.3.2" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" import-meta-resolve: "npm:^2.2.1" jessie.js: "npm:^0.3.4" - checksum: 10c0/0b2b6b9a964f1194c68818e1b5b65fef15138b6b670e58fb35322b169d540a73fa453d7918290d7311caeef3cd4db5423bf0b8490a0b31087eb12230a429a9ce + checksum: 10c0/d8920290ce6cab7f7dccbc6890df6ee0dfb2d25a4b63b9e6d5794aec8379d17bc253196162668ab1c02c824af07bb2aa890053ef9c55206b62342d43079ef806 languageName: node linkType: hard @@ -1054,22 +1054,6 @@ __metadata: languageName: node linkType: hard -"@agoric/vow@npm:0.1.1-dev-02c06c4.0+02c06c4": - version: 0.1.1-dev-02c06c4.0 - resolution: "@agoric/vow@npm:0.1.1-dev-02c06c4.0" - dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@endo/env-options": "npm:^1.1.7" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" - checksum: 10c0/6da30cb8fe91333fa6d961df09ce293ee9ee24104c6e86ff87832f4975016b02e0c520e82dd9338a69059106417bdd86be0aaf2df59295f1424d8c86d9f0eb11 - languageName: node - linkType: hard - "@agoric/vow@npm:0.1.1-dev-3b799b8.0+3b799b8": version: 0.1.1-dev-3b799b8.0 resolution: "@agoric/vow@npm:0.1.1-dev-3b799b8.0" @@ -1086,6 +1070,22 @@ __metadata: languageName: node linkType: hard +"@agoric/vow@npm:0.1.1-dev-c1ae023.0+c1ae023": + version: 0.1.1-dev-c1ae023.0 + resolution: "@agoric/vow@npm:0.1.1-dev-c1ae023.0" + dependencies: + "@agoric/base-zone": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@endo/env-options": "npm:^1.1.8" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" + checksum: 10c0/094266768c8ff75032ce96faae9163e7dfa4e9ada55ce88354ca6de4b993d28252bcb6637900793f4e3f7b16afe62ac2f2bcc8825613b5cf95701ca46d4b4066 + languageName: node + linkType: hard + "@agoric/vow@npm:0.1.1-dev-e596a01.0+e596a01": version: 0.1.1-dev-e596a01.0 resolution: "@agoric/vow@npm:0.1.1-dev-e596a01.0" @@ -1102,13 +1102,6 @@ __metadata: languageName: node linkType: hard -"@agoric/xsnap-lockdown@npm:0.14.1-dev-02c06c4.0+02c06c4": - version: 0.14.1-dev-02c06c4.0 - resolution: "@agoric/xsnap-lockdown@npm:0.14.1-dev-02c06c4.0" - checksum: 10c0/7b883c30a1ec8bc4fb727c5e442acc6ddd4af98067ce86f2f85c333ce8bafe525049a8b09668b4fec7671c368205095949d096df5c45be827a40e550863398a9 - languageName: node - linkType: hard - "@agoric/xsnap-lockdown@npm:0.14.1-dev-3b799b8.0+3b799b8": version: 0.14.1-dev-3b799b8.0 resolution: "@agoric/xsnap-lockdown@npm:0.14.1-dev-3b799b8.0" @@ -1116,6 +1109,13 @@ __metadata: languageName: node linkType: hard +"@agoric/xsnap-lockdown@npm:0.14.1-dev-c1ae023.0+c1ae023": + version: 0.14.1-dev-c1ae023.0 + resolution: "@agoric/xsnap-lockdown@npm:0.14.1-dev-c1ae023.0" + checksum: 10c0/65aefeb29497f8780849677ee81ba6f46f358d9f29ad5790541d5626ad8b08e34e27fa9063e24a4ddef5e2bf616e7aec16b6fff505a5bd3bbd0c87ceac110f49 + languageName: node + linkType: hard + "@agoric/xsnap-lockdown@npm:0.14.1-dev-e596a01.0+e596a01": version: 0.14.1-dev-e596a01.0 resolution: "@agoric/xsnap-lockdown@npm:0.14.1-dev-e596a01.0" @@ -1123,36 +1123,36 @@ __metadata: languageName: node linkType: hard -"@agoric/zoe@npm:0.26.3-dev-02c06c4.0+02c06c4": - version: 0.26.3-dev-02c06c4.0 - resolution: "@agoric/zoe@npm:0.26.3-dev-02c06c4.0" +"@agoric/zoe@npm:0.26.3-dev-c1ae023.0+c1ae023": + version: 0.26.3-dev-c1ae023.0 + resolution: "@agoric/zoe@npm:0.26.3-dev-c1ae023.0" dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/ertp": "npm:0.16.3-dev-02c06c4.0+02c06c4" - "@agoric/internal": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/notifier": "npm:0.6.3-dev-02c06c4.0+02c06c4" - "@agoric/store": "npm:0.9.3-dev-02c06c4.0+02c06c4" - "@agoric/swingset-liveslots": "npm:0.10.3-dev-02c06c4.0+02c06c4" - "@agoric/swingset-vat": "npm:0.32.3-dev-02c06c4.0+02c06c4" - "@agoric/time": "npm:0.3.3-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@agoric/vow": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/zone": "npm:0.2.3-dev-02c06c4.0+02c06c4" - "@endo/bundle-source": "npm:^3.4.2" - "@endo/captp": "npm:^4.4.2" - "@endo/common": "npm:^1.2.7" - "@endo/errors": "npm:^1.2.7" - "@endo/eventual-send": "npm:^1.2.7" - "@endo/exo": "npm:^1.5.6" - "@endo/far": "npm:^1.1.8" - "@endo/import-bundle": "npm:^1.3.1" - "@endo/marshal": "npm:^1.6.1" - "@endo/nat": "npm:^5.0.12" - "@endo/pass-style": "npm:^1.4.6" - "@endo/patterns": "npm:^1.4.6" - "@endo/promise-kit": "npm:^1.1.7" + "@agoric/base-zone": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/ertp": "npm:0.16.3-dev-c1ae023.0+c1ae023" + "@agoric/internal": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/notifier": "npm:0.6.3-dev-c1ae023.0+c1ae023" + "@agoric/store": "npm:0.9.3-dev-c1ae023.0+c1ae023" + "@agoric/swingset-liveslots": "npm:0.10.3-dev-c1ae023.0+c1ae023" + "@agoric/swingset-vat": "npm:0.32.3-dev-c1ae023.0+c1ae023" + "@agoric/time": "npm:0.3.3-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@agoric/vow": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/zone": "npm:0.2.3-dev-c1ae023.0+c1ae023" + "@endo/bundle-source": "npm:^3.5.0" + "@endo/captp": "npm:^4.4.3" + "@endo/common": "npm:^1.2.8" + "@endo/errors": "npm:^1.2.8" + "@endo/eventual-send": "npm:^1.2.8" + "@endo/exo": "npm:^1.5.7" + "@endo/far": "npm:^1.1.9" + "@endo/import-bundle": "npm:^1.3.2" + "@endo/marshal": "npm:^1.6.2" + "@endo/nat": "npm:^5.0.13" + "@endo/pass-style": "npm:^1.4.7" + "@endo/patterns": "npm:^1.4.7" + "@endo/promise-kit": "npm:^1.1.8" yargs-parser: "npm:^21.1.1" - checksum: 10c0/9aa34ecf57ea7882241206da18e88235152c05be6bf267eda2b51156ca2c48730b70be3429b5881e7fa0a02dfd97334da94ece9c82537277b0fd0b2f125c6e48 + checksum: 10c0/3b54c53506206d7406c0ffb309cb59d90a5cae13d0697320055127be163379369114a032b2af7c272e5646b9d9b65f1131c88750544ba859d5e1a11b618210b0 languageName: node linkType: hard @@ -1222,19 +1222,6 @@ __metadata: languageName: node linkType: hard -"@agoric/zone@npm:0.2.3-dev-02c06c4.0+02c06c4": - version: 0.2.3-dev-02c06c4.0 - resolution: "@agoric/zone@npm:0.2.3-dev-02c06c4.0" - dependencies: - "@agoric/base-zone": "npm:0.1.1-dev-02c06c4.0+02c06c4" - "@agoric/vat-data": "npm:0.5.3-dev-02c06c4.0+02c06c4" - "@endo/errors": "npm:^1.2.7" - "@endo/far": "npm:^1.1.8" - "@endo/pass-style": "npm:^1.4.6" - checksum: 10c0/f4cf6df5a81cba46762a3ebfb63c3f13633974205eb3b7051c845d0ac2adb2cac2b9b6ab100c64c8dc63eec8ad9c051f2ddc04153f4f07f1046a763869f589fe - languageName: node - linkType: hard - "@agoric/zone@npm:0.2.3-dev-3b799b8.0+3b799b8": version: 0.2.3-dev-3b799b8.0 resolution: "@agoric/zone@npm:0.2.3-dev-3b799b8.0" @@ -1248,6 +1235,19 @@ __metadata: languageName: node linkType: hard +"@agoric/zone@npm:0.2.3-dev-c1ae023.0+c1ae023": + version: 0.2.3-dev-c1ae023.0 + resolution: "@agoric/zone@npm:0.2.3-dev-c1ae023.0" + dependencies: + "@agoric/base-zone": "npm:0.1.1-dev-c1ae023.0+c1ae023" + "@agoric/vat-data": "npm:0.5.3-dev-c1ae023.0+c1ae023" + "@endo/errors": "npm:^1.2.8" + "@endo/far": "npm:^1.1.9" + "@endo/pass-style": "npm:^1.4.7" + checksum: 10c0/292be1e4198ecdbc87a300efc1548190d26698c6c541dd8e0f6794dc0407b9e3bfc013f8dadd6788e995327044ce8f8e4181ff01b851b77562224aa273d066bf + languageName: node + linkType: hard + "@agoric/zone@npm:0.2.3-dev-e596a01.0+e596a01": version: 0.2.3-dev-e596a01.0 resolution: "@agoric/zone@npm:0.2.3-dev-e596a01.0" @@ -1749,7 +1749,7 @@ __metadata: languageName: node linkType: hard -"@endo/lockdown@npm:^1.0.12, @endo/lockdown@npm:^1.0.13": +"@endo/lockdown@npm:^1.0.13": version: 1.0.13 resolution: "@endo/lockdown@npm:1.0.13" dependencies: @@ -6349,7 +6349,7 @@ __metadata: version: 0.0.0-use.local resolution: "root-workspace-0b6124@workspace:." dependencies: - "@agoric/client-utils": "npm:0.1.1-dev-02c06c4.0" + "@agoric/client-utils": "npm:dev" "@agoric/ertp": "npm:dev" "@agoric/internal": "npm:dev" "@agoric/synthetic-chain": "npm:^0.4.3" diff --git a/golang/cosmos/app/upgrade.go b/golang/cosmos/app/upgrade.go index 43cdb931055..8e6a2c68bcd 100644 --- a/golang/cosmos/app/upgrade.go +++ b/golang/cosmos/app/upgrade.go @@ -157,6 +157,22 @@ func replacePriceFeedsCoreProposal(upgradeName string) (vm.CoreProposalStep, err ) } +// func upgradeMintHolderCoreProposal(upgradeName string) (vm.CoreProposalStep, error) { +// variant := getVariantFromUpgradeName(upgradeName) + +// if variant == "" { +// return nil, nil +// } + +// return buildProposalStepWithArgs( +// "@agoric/builders/scripts/vats/upgrade-mintHolder.js", +// "defaultProposalBuilder", +// map[string]any{ +// "variant": variant, +// }, +// ) +// } + // unreleasedUpgradeHandler performs standard upgrade actions plus custom actions for the unreleased upgrade. func unreleasedUpgradeHandler(app *GaiaApp, targetUpgrade string) func(sdk.Context, upgradetypes.Plan, module.VersionMap) (module.VersionMap, error) { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVm module.VersionMap) (module.VersionMap, error) { @@ -216,6 +232,14 @@ func unreleasedUpgradeHandler(app *GaiaApp, targetUpgrade string) func(sdk.Conte // CoreProposals for Upgrade 19. These should not be introduced // before upgrade 18 is done because they would be run in n:upgrade-next + // + // upgradeMintHolderStep, err := upgradeMintHolderCoreProposal(targetUpgrade) + // if err != nil { + // return nil, err + // } else if upgradeMintHolderStep != nil { + // CoreProposalSteps = append(CoreProposalSteps, upgradeMintHolderStep) + // } + // // CoreProposalSteps = append(CoreProposalSteps, // vm.CoreProposalStepForModules( // "@agoric/builders/scripts/inter-protocol/replace-feeDistributor.js", diff --git a/packages/builders/scripts/vats/upgrade-mintHolder.js b/packages/builders/scripts/vats/upgrade-mintHolder.js new file mode 100644 index 00000000000..18cb47854c2 --- /dev/null +++ b/packages/builders/scripts/vats/upgrade-mintHolder.js @@ -0,0 +1,126 @@ +import { makeHelpers } from '@agoric/deploy-script-support'; +import { getManifestForUpgradingMintHolder } from '@agoric/vats/src/proposals/upgrade-mintHolder-proposal.js'; + +const configurations = { + A3P_INTEGRATION: { + labelList: [ + 'USDC_axl', + 'USDT_grv', + 'DAI_axl', + 'DAI_grv', + 'stATOM', + 'USDC_grv', + 'ATOM', + 'USDT_axl', + 'USDC', + 'BLD', + ], + }, + MAINNET: { + labelList: [ + 'USDT', + 'USDT_axl', + 'USDT_grv', + 'USDC', + 'USDC_axl', + 'USDC_grv', + 'DAI_axl', + 'DAI_grv', + 'ATOM', + 'stATOM', + 'stkATOM', + 'stTIA', + 'stOSMO', + ], + }, + DEVNET: { + labelList: [ + 'stATOM3', + 'stATOM', + 'dATOM', + 'stOSMO', + 'stkATOM', + 'stATOM2', + 'STOSMO', + 'stTIA', + 'ATOM', + 'AUSD', + 'USDT_grv', + 'USDC_axl', + 'USDC_grv', + 'USDT_axl', + 'BLD', + ], + }, + EMERYNET: { + labelList: [ + 'ATOM', + 'USDT', + 'DAI_axl', + 'DAI_grv', + 'USDC_axl', + 'stOSMO', + 'stATOM', + 'stkATOM', + 'stOSMO2', + 'ToyUSD', + 'BLD', + ], + }, +}; + +const { keys } = Object; +const knownVariants = keys(configurations); + +/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').CoreEvalBuilder} */ +export const defaultProposalBuilder = async ({ publishRef, install }, opts) => { + const config = opts.config || configurations[opts.variant]; + if (!config) { + const error = `Unknown variant "${opts.variant}". Expected one of ${knownVariants.join(', ')}`; + console.error(error); + throw Error(error); + } + const { labelList } = config; + + return harden({ + sourceSpec: '@agoric/vats/src/proposals/upgrade-mintHolder-proposal.js', + getManifestCall: [ + getManifestForUpgradingMintHolder.name, + { + labelList, + contractRef: publishRef(install('@agoric/vats/src/mintHolder.js')), + }, + ], + }); +}; + +const Usage = `agoric run upgrade-mintHolder.js ${[...knownVariants, ''].join(' | ')}`; + +/** @type {import('@agoric/deploy-script-support/src/externalTypes.js').DeployScriptFunction} */ +export default async (homeP, endowments) => { + const { scriptArgs } = endowments; + const variantOrConfig = scriptArgs?.[0]; + console.log('upgrade-mintHolder', variantOrConfig); + + const opts = {}; + + if (typeof variantOrConfig === 'string') { + if (variantOrConfig[0] === '{') { + try { + opts.config = JSON.parse(variantOrConfig); + } catch (err) { + throw Error(`Failed to parse config argument ${variantOrConfig}`); + } + } else { + opts.variant = variantOrConfig; + } + } else { + console.error(Usage); + throw Error(Usage); + } + + const { writeCoreEval } = await makeHelpers(homeP, endowments); + await writeCoreEval(`upgrade-mintHolder`, utils => + defaultProposalBuilder(utils, opts), + ); +}; diff --git a/packages/vats/src/proposals/upgrade-mintHolder-proposal.js b/packages/vats/src/proposals/upgrade-mintHolder-proposal.js new file mode 100644 index 00000000000..4b231abdc16 --- /dev/null +++ b/packages/vats/src/proposals/upgrade-mintHolder-proposal.js @@ -0,0 +1,74 @@ +import { makeTracer } from '@agoric/internal'; +import { E } from '@endo/far'; + +const trace = makeTracer('upgrade mintHolder', true); + +export const upgradeMintHolder = async ( + { + consume: { + contractKits: contractKitsP, + instancePrivateArgs: instancePrivateArgsP, + }, + }, + options, +) => { + const { contractRef, labelList } = options.options; + assert(contractRef.bundleID, 'mintHolder bundleID not found'); + assert(labelList, 'mintHolder bank asset label list not found'); + + trace(`Start mintHolder contract upgrade`); + trace(`Assets: `, labelList); + + const [contractKits, instancePrivateArgs] = await Promise.all([ + contractKitsP, + instancePrivateArgsP, + ]); + + for (const assetLabel of labelList) { + const mintHolderKit = Array.from(contractKits.values()).find( + kit => kit.label && kit.label === assetLabel, + ); + if (!mintHolderKit) { + console.error( + `ERROR: failed to upgrade ${assetLabel} mintHolder, contractKit not found`, + ); + continue; + } + + trace(`${assetLabel} mintHolderKit: `, mintHolderKit); + + const { publicFacet, adminFacet, instance } = mintHolderKit; + + /* + * Ensure that publicFacet holds an issuer by verifying that has + * the makeEmptyPurse method. + */ + await E(publicFacet).makeEmptyPurse(); + + const privateArgs = instancePrivateArgs.get(instance); + + const upgradeResult = await E(adminFacet).upgradeContract( + contractRef.bundleID, + privateArgs, + ); + + trace(`${assetLabel} upgrade result: `, upgradeResult); + } + + trace(`Finished mintHolder contract upgrade`); +}; + +export const getManifestForUpgradingMintHolder = ( + _powers, + { contractRef, labelList }, +) => ({ + manifest: { + [upgradeMintHolder.name]: { + consume: { + contractKits: true, + instancePrivateArgs: true, + }, + }, + }, + options: { contractRef, labelList }, +});