From a0115ede1432a5fd9c5435e7ef84ea5281aa07e7 Mon Sep 17 00:00:00 2001 From: Turadg Aleahmad Date: Thu, 13 Jun 2024 10:43:00 -0700 Subject: [PATCH] feat: writeCoreEval returns plan --- .../deploy-script-support/src/writeCoreEvalParts.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/deploy-script-support/src/writeCoreEvalParts.js b/packages/deploy-script-support/src/writeCoreEvalParts.js index 35039187312..505f07008b6 100644 --- a/packages/deploy-script-support/src/writeCoreEvalParts.js +++ b/packages/deploy-script-support/src/writeCoreEvalParts.js @@ -14,13 +14,21 @@ import { * @import {CoreEvalDescriptor} from './externalTypes.js'; */ +/** + * @typedef CoreEvalPlan + * @property {string} name + * @property {string} permit + * @property {string} script + * @property {{entrypoint: string, bundleID: string, fileName: string}[]} bundles + */ + /** * @callback WriteCoreEval write to disk the files needed for a CoreEval (js code to`${filePrefix}.js`, permits to `${filePrefix}-permit.json`, an overall * summary to `${filePrefix}-plan.json), plus whatever bundles bundles the code loads) * see CoreEval in {@link '/golang/cosmos/x/swingset/types/swingset.pb.go'} * @param {string} filePrefix name on disk * @param {import('./externalTypes.js').CoreEvalBuilder} builder - * @returns {Promise} + * @returns {Promise} */ /** @@ -189,6 +197,7 @@ behavior; log(`creating ${codeFile}`); await writeFile(codeFile, trimmed); + /** @type {CoreEvalPlan} */ const plan = { name: filePrefix, script: codeFile, @@ -209,6 +218,7 @@ You can now run a governance submission command like: Remember to install bundles before submitting the proposal: ${cmds.join('\n ')} `); + return plan; }; return writeCoreEval;