gate-evm-tools 1.0.31 → 1.2.1
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/README.md +34 -20
- package/bin/cli.js +3 -0
- package/bin/delivery.cjs +8 -7
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +26 -2
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/plan/index.d.ts.map +1 -1
- package/dist/commands/plan/index.js +1 -1
- package/dist/commands/plan/index.js.map +1 -1
- package/dist/core/preparation/batch.d.ts +26 -0
- package/dist/core/preparation/batch.d.ts.map +1 -0
- package/dist/core/preparation/batch.js +72 -0
- package/dist/core/preparation/batch.js.map +1 -0
- package/dist/core/preparation/evm.d.ts +23 -4
- package/dist/core/preparation/evm.d.ts.map +1 -1
- package/dist/core/preparation/evm.js +19 -3
- package/dist/core/preparation/evm.js.map +1 -1
- package/dist/core/preparation/evmManifestSync.d.ts +5 -0
- package/dist/core/preparation/evmManifestSync.d.ts.map +1 -1
- package/dist/core/preparation/evmManifestSync.js +15 -7
- package/dist/core/preparation/evmManifestSync.js.map +1 -1
- package/dist/core/preparation/index.d.ts +2 -2
- package/dist/core/preparation/index.d.ts.map +1 -1
- package/dist/core/preparation/manifest.d.ts +2 -0
- package/dist/core/preparation/manifest.d.ts.map +1 -1
- package/dist/core/preparation/manifest.js +2 -2
- package/dist/core/preparation/manifest.js.map +1 -1
- package/dist/core/preparation/normalize.d.ts.map +1 -1
- package/dist/core/preparation/normalize.js +53 -11
- package/dist/core/preparation/normalize.js.map +1 -1
- package/dist/core/preparation/transparent.d.ts +23 -0
- package/dist/core/preparation/transparent.d.ts.map +1 -0
- package/dist/core/preparation/transparent.js +103 -0
- package/dist/core/preparation/transparent.js.map +1 -0
- package/dist/core/preparation/types.d.ts +47 -5
- package/dist/core/preparation/types.d.ts.map +1 -1
- package/dist/core/preparation/zksync.d.ts.map +1 -1
- package/dist/core/preparation/zksync.js +2 -0
- package/dist/core/preparation/zksync.js.map +1 -1
- package/dist/custody/credential.d.ts.map +1 -1
- package/dist/custody/credential.js +1 -6
- package/dist/custody/credential.js.map +1 -1
- package/dist/deployment-evm/index.d.ts +4 -0
- package/dist/deployment-evm/index.d.ts.map +1 -0
- package/dist/deployment-evm/index.js +3 -0
- package/dist/deployment-evm/index.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +5 -0
- package/dist/sync/index.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/workflow/index.d.ts +4 -1
- package/dist/workflow/index.d.ts.map +1 -1
- package/dist/workflow/index.js +2 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist-cjs/core/preparation/batch.js +76 -0
- package/dist-cjs/core/preparation/batch.js.map +1 -0
- package/dist-cjs/core/preparation/evm.js +25 -7
- package/dist-cjs/core/preparation/evm.js.map +1 -1
- package/dist-cjs/core/preparation/evmManifestSync.js +15 -7
- package/dist-cjs/core/preparation/evmManifestSync.js.map +1 -1
- package/dist-cjs/core/preparation/manifest.js +2 -2
- package/dist-cjs/core/preparation/manifest.js.map +1 -1
- package/dist-cjs/core/preparation/normalize.js +53 -11
- package/dist-cjs/core/preparation/normalize.js.map +1 -1
- package/dist-cjs/core/preparation/transparent.js +110 -0
- package/dist-cjs/core/preparation/transparent.js.map +1 -0
- package/dist-cjs/core/preparation/zksync.js +2 -0
- package/dist-cjs/core/preparation/zksync.js.map +1 -1
- package/dist-cjs/custody/credential.js +1 -6
- package/dist-cjs/custody/credential.js.map +1 -1
- package/dist-cjs/deployment-evm/index.js +10 -0
- package/dist-cjs/deployment-evm/index.js.map +1 -0
- package/dist-cjs/sync/index.js +5 -0
- package/dist-cjs/sync/index.js.map +1 -1
- package/dist-cjs/workflow/index.js +11 -1
- package/dist-cjs/workflow/index.js.map +1 -1
- package/dist-runtime/config/hardhatAdapters.js +2 -1
- package/dist-runtime/config/hardhatAdapters.js.map +1 -1
- package/dist-runtime/delivery/aggregate-bootstrap.js +3 -1
- package/dist-runtime/delivery/aggregate-bootstrap.js.map +1 -1
- package/dist-runtime/delivery/aggregate-channel.js +7 -3
- package/dist-runtime/delivery/aggregate-channel.js.map +1 -1
- package/dist-runtime/delivery/aggregate-diagnostics.d.ts +14 -0
- package/dist-runtime/delivery/aggregate-diagnostics.js +73 -0
- package/dist-runtime/delivery/aggregate-diagnostics.js.map +1 -0
- package/dist-runtime/delivery/aggregate-inputs.d.ts +13 -9
- package/dist-runtime/delivery/aggregate-source.js +11 -3
- package/dist-runtime/delivery/aggregate-source.js.map +1 -1
- package/dist-runtime/delivery/aggregate-worker.js +12 -4
- package/dist-runtime/delivery/aggregate-worker.js.map +1 -1
- package/dist-runtime/delivery/aggregate.js +2 -2
- package/dist-runtime/delivery/aggregate.js.map +1 -1
- package/dist-runtime/delivery/business-extension.d.ts +10 -0
- package/dist-runtime/delivery/business-extension.js +38 -0
- package/dist-runtime/delivery/business-extension.js.map +1 -0
- package/dist-runtime/delivery/calldata-archive.d.ts +18 -0
- package/dist-runtime/delivery/calldata-archive.js +31 -0
- package/dist-runtime/delivery/calldata-archive.js.map +1 -0
- package/dist-runtime/delivery/calldata-details.d.ts +47 -0
- package/dist-runtime/delivery/calldata-details.js +94 -0
- package/dist-runtime/delivery/calldata-details.js.map +1 -0
- package/dist-runtime/delivery/calldata-format.d.ts +4 -0
- package/dist-runtime/delivery/calldata-format.js +17 -0
- package/dist-runtime/delivery/calldata-format.js.map +1 -0
- package/dist-runtime/delivery/calldata-preparations.d.ts +13 -0
- package/dist-runtime/delivery/calldata-preparations.js +85 -0
- package/dist-runtime/delivery/calldata-preparations.js.map +1 -0
- package/dist-runtime/delivery/calldata-review.d.ts +44 -0
- package/dist-runtime/delivery/calldata-review.js +131 -0
- package/dist-runtime/delivery/calldata-review.js.map +1 -0
- package/dist-runtime/delivery/codec-pin.d.ts +2 -2
- package/dist-runtime/delivery/codec-pin.js +4 -4
- package/dist-runtime/delivery/codec-pin.js.map +1 -1
- package/dist-runtime/delivery/compiler-files.js +3 -1
- package/dist-runtime/delivery/compiler-files.js.map +1 -1
- package/dist-runtime/delivery/compiler-pins.js +1 -1
- package/dist-runtime/delivery/compiler.js +17 -16
- package/dist-runtime/delivery/compiler.js.map +1 -1
- package/dist-runtime/delivery/config.d.ts +1 -1
- package/dist-runtime/delivery/config.js +27 -2
- package/dist-runtime/delivery/config.js.map +1 -1
- package/dist-runtime/delivery/configuration-definition.d.ts +9 -0
- package/dist-runtime/delivery/configuration-definition.js +33 -6
- package/dist-runtime/delivery/configuration-definition.js.map +1 -1
- package/dist-runtime/delivery/configuration.js +7 -4
- package/dist-runtime/delivery/configuration.js.map +1 -1
- package/dist-runtime/delivery/contract-source.d.ts +14 -0
- package/dist-runtime/delivery/contract-source.js +138 -0
- package/dist-runtime/delivery/contract-source.js.map +1 -0
- package/dist-runtime/delivery/custom-format.js +51 -24
- package/dist-runtime/delivery/custom-format.js.map +1 -1
- package/dist-runtime/delivery/development-inputs.d.ts +14 -0
- package/dist-runtime/delivery/development-inputs.js +76 -0
- package/dist-runtime/delivery/development-inputs.js.map +1 -0
- package/dist-runtime/delivery/development.d.ts +3 -1
- package/dist-runtime/delivery/development.js +24 -10
- package/dist-runtime/delivery/development.js.map +1 -1
- package/dist-runtime/delivery/eoa.d.ts +1 -0
- package/dist-runtime/delivery/execution-identity.d.ts +15 -0
- package/dist-runtime/delivery/execution-identity.js +33 -0
- package/dist-runtime/delivery/execution-identity.js.map +1 -0
- package/dist-runtime/delivery/existing-code.js +14 -6
- package/dist-runtime/delivery/existing-code.js.map +1 -1
- package/dist-runtime/delivery/history-package.d.ts +2 -0
- package/dist-runtime/delivery/history-package.js +70 -0
- package/dist-runtime/delivery/history-package.js.map +1 -0
- package/dist-runtime/delivery/history-registration.d.ts +1 -1
- package/dist-runtime/delivery/inputs.js +22 -15
- package/dist-runtime/delivery/inputs.js.map +1 -1
- package/dist-runtime/delivery/journal.js +18 -10
- package/dist-runtime/delivery/journal.js.map +1 -1
- package/dist-runtime/delivery/parameter-defaults.d.ts +10 -0
- package/dist-runtime/delivery/parameter-defaults.js +86 -0
- package/dist-runtime/delivery/parameter-defaults.js.map +1 -0
- package/dist-runtime/delivery/parameters.d.ts +2 -0
- package/dist-runtime/delivery/parameters.js +22 -0
- package/dist-runtime/delivery/parameters.js.map +1 -1
- package/dist-runtime/delivery/planning.d.ts +4 -1
- package/dist-runtime/delivery/planning.js +19 -3
- package/dist-runtime/delivery/planning.js.map +1 -1
- package/dist-runtime/delivery/preparation.js +43 -23
- package/dist-runtime/delivery/preparation.js.map +1 -1
- package/dist-runtime/delivery/production-environment.js +2 -1
- package/dist-runtime/delivery/production-environment.js.map +1 -1
- package/dist-runtime/delivery/production-finalization.js +23 -9
- package/dist-runtime/delivery/production-finalization.js.map +1 -1
- package/dist-runtime/delivery/production-intent.d.ts +2 -0
- package/dist-runtime/delivery/production-intent.js +16 -0
- package/dist-runtime/delivery/production-intent.js.map +1 -0
- package/dist-runtime/delivery/production.d.ts +129 -8
- package/dist-runtime/delivery/production.js +60 -11
- package/dist-runtime/delivery/production.js.map +1 -1
- package/dist-runtime/delivery/project-files.d.ts +3 -3
- package/dist-runtime/delivery/project-files.js +19 -14
- package/dist-runtime/delivery/project-files.js.map +1 -1
- package/dist-runtime/delivery/project-rpc.d.ts +19 -0
- package/dist-runtime/delivery/project-rpc.js +138 -0
- package/dist-runtime/delivery/project-rpc.js.map +1 -0
- package/dist-runtime/delivery/project.d.ts +3 -1
- package/dist-runtime/delivery/project.js +21 -8
- package/dist-runtime/delivery/project.js.map +1 -1
- package/dist-runtime/delivery/public-calldata.d.ts +25 -0
- package/dist-runtime/delivery/public-calldata.js +97 -0
- package/dist-runtime/delivery/public-calldata.js.map +1 -0
- package/dist-runtime/delivery/release-graph.d.ts +7 -3
- package/dist-runtime/delivery/release-graph.js +58 -25
- package/dist-runtime/delivery/release-graph.js.map +1 -1
- package/dist-runtime/delivery/release-history-capture.js +22 -26
- package/dist-runtime/delivery/release-history-capture.js.map +1 -1
- package/dist-runtime/delivery/release-history.d.ts +3 -2
- package/dist-runtime/delivery/release-history.js +97 -50
- package/dist-runtime/delivery/release-history.js.map +1 -1
- package/dist-runtime/delivery/release-inputs.d.ts +33 -0
- package/dist-runtime/delivery/release-inputs.js +129 -0
- package/dist-runtime/delivery/release-inputs.js.map +1 -0
- package/dist-runtime/delivery/release.d.ts +38 -14
- package/dist-runtime/delivery/release.js +81 -29
- package/dist-runtime/delivery/release.js.map +1 -1
- package/dist-runtime/delivery/safe.d.ts +1 -0
- package/dist-runtime/delivery/safe.js +13 -2
- package/dist-runtime/delivery/safe.js.map +1 -1
- package/dist-runtime/delivery/same-fork-baseline.d.ts +1 -1
- package/dist-runtime/delivery/same-fork-baseline.js +5 -4
- package/dist-runtime/delivery/same-fork-baseline.js.map +1 -1
- package/dist-runtime/delivery/setup.d.ts +1 -1
- package/dist-runtime/delivery/setup.js +21 -6
- package/dist-runtime/delivery/setup.js.map +1 -1
- package/dist-runtime/delivery/source.d.ts +1 -0
- package/dist-runtime/delivery/source.js +12 -10
- package/dist-runtime/delivery/source.js.map +1 -1
- package/dist-runtime/delivery/task-identity.d.ts +23 -0
- package/dist-runtime/delivery/task-identity.js +109 -0
- package/dist-runtime/delivery/task-identity.js.map +1 -0
- package/dist-runtime/delivery/toolchain.d.ts +3 -0
- package/dist-runtime/delivery/toolchain.js +52 -0
- package/dist-runtime/delivery/toolchain.js.map +1 -0
- package/dist-runtime/delivery/validation.js +7 -2
- package/dist-runtime/delivery/validation.js.map +1 -1
- package/dist-runtime/runtime-identity.json +2 -2
- package/dist-runtime/vendor/plan-codec/index.cjs +97 -20
- package/dist-runtime/vendor/plan-codec/index.d.cts +6 -0
- package/dist-runtime/vendor/plan-codec/provenance.json +9 -8
- package/dist-runtime/workflow/lib/calls.js +1 -0
- package/dist-runtime/workflow/lib/calls.js.map +1 -1
- package/dist-runtime/workflow/lib/checkCodeRunner.js +7 -4
- package/dist-runtime/workflow/lib/checkCodeRunner.js.map +1 -1
- package/dist-runtime/workflow/lib/context.d.ts +1 -0
- package/dist-runtime/workflow/lib/create2.d.ts +4 -26
- package/dist-runtime/workflow/lib/create2.js +2 -67
- package/dist-runtime/workflow/lib/create2.js.map +1 -1
- package/dist-runtime/workflow/lib/deploymentInfo.d.ts +2 -0
- package/dist-runtime/workflow/lib/deploymentInfo.js +6 -0
- package/dist-runtime/workflow/lib/deploymentInfo.js.map +1 -1
- package/dist-runtime/workflow/lib/deploymentRecords.d.ts +2 -0
- package/dist-runtime/workflow/lib/deploymentRecords.js +1 -1
- package/dist-runtime/workflow/lib/deploymentRecords.js.map +1 -1
- package/dist-runtime/workflow/lib/externalExecutionScanner.js +2 -1
- package/dist-runtime/workflow/lib/externalExecutionScanner.js.map +1 -1
- package/dist-runtime/workflow/lib/gateTool.js +2 -2
- package/dist-runtime/workflow/lib/gateTool.js.map +1 -1
- package/dist-runtime/workflow/lib/gateToolSync.d.ts +3 -0
- package/dist-runtime/workflow/lib/gateToolSync.js +5 -0
- package/dist-runtime/workflow/lib/gateToolSync.js.map +1 -1
- package/dist-runtime/workflow/lib/parameters.js +5 -0
- package/dist-runtime/workflow/lib/parameters.js.map +1 -1
- package/dist-runtime/workflow/lib/proxy.d.ts +1 -0
- package/dist-runtime/workflow/lib/proxy.js.map +1 -1
- package/dist-runtime/workflow/run.js +1 -3
- package/dist-runtime/workflow/run.js.map +1 -1
- package/dist-runtime/workflow/steps/deploy.js +53 -0
- package/dist-runtime/workflow/steps/deploy.js.map +1 -1
- package/dist-runtime/workflow/steps/upgrade.js +24 -10
- package/dist-runtime/workflow/steps/upgrade.js.map +1 -1
- package/docs/compiler-qualification.md +8 -2
- package/docs/delivery-aggregate.md +2 -0
- package/docs/delivery-calldata.md +27 -0
- package/docs/delivery-development.md +6 -0
- package/docs/delivery-execution-store.md +1 -1
- package/docs/delivery-inputs.md +55 -6
- package/docs/delivery-parameters.md +1 -1
- package/docs/delivery-release.md +77 -7
- package/docs/delivery-safe.md +7 -4
- package/docs/delivery-setup.md +72 -20
- package/docs/delivery-source.md +8 -8
- package/docs/direct-package-acceptance.md +2 -0
- package/docs/openzeppelin-acceptance.md +86 -0
- package/docs/openzeppelin-baseline.json +27 -0
- package/docs/openzeppelin-integration.md +115 -0
- package/docs/plans/2026-10-28-openzeppelin-toolkit-consolidation.md +396 -0
- package/docs/plans/2026-11-02-transparent-proxy-delivery.md +78 -0
- package/docs/superpowers/plans/2026-08-17-custody-hardhat-signers.md +1 -1
- package/docs/workflow-reference.md +12 -4
- package/docs/workflow-runtime.md +6 -0
- package/package.json +19 -5
- package/runtime/config/hardhatAdapters.ts +2 -1
- package/runtime/delivery/aggregate-bootstrap.ts +3 -1
- package/runtime/delivery/aggregate-channel.ts +6 -3
- package/runtime/delivery/aggregate-diagnostics.ts +63 -0
- package/runtime/delivery/aggregate-source.ts +6 -2
- package/runtime/delivery/aggregate-worker.ts +15 -5
- package/runtime/delivery/aggregate.ts +2 -2
- package/runtime/delivery/business-extension.ts +33 -0
- package/runtime/delivery/calldata-archive.ts +25 -0
- package/runtime/delivery/calldata-details.ts +90 -0
- package/runtime/delivery/calldata-format.ts +14 -0
- package/runtime/delivery/calldata-preparations.ts +76 -0
- package/runtime/delivery/calldata-review.ts +126 -0
- package/runtime/delivery/codec-pin.ts +3 -3
- package/runtime/delivery/compiler-files.ts +3 -1
- package/runtime/delivery/compiler-pins.ts +1 -1
- package/runtime/delivery/compiler.ts +18 -17
- package/runtime/delivery/config.ts +25 -2
- package/runtime/delivery/configuration-definition.ts +34 -7
- package/runtime/delivery/configuration.ts +8 -5
- package/runtime/delivery/contract-source.ts +112 -0
- package/runtime/delivery/custom-format.ts +20 -5
- package/runtime/delivery/development-inputs.ts +42 -0
- package/runtime/delivery/development.ts +14 -11
- package/runtime/delivery/execution-identity.ts +32 -0
- package/runtime/delivery/existing-code.ts +7 -6
- package/runtime/delivery/history-package.ts +50 -0
- package/runtime/delivery/inputs.ts +18 -11
- package/runtime/delivery/journal.ts +14 -10
- package/runtime/delivery/parameter-defaults.ts +75 -0
- package/runtime/delivery/parameters.ts +18 -0
- package/runtime/delivery/planning.ts +19 -5
- package/runtime/delivery/preparation.ts +17 -1
- package/runtime/delivery/production-environment.ts +2 -1
- package/runtime/delivery/production-finalization.ts +19 -10
- package/runtime/delivery/production-intent.ts +14 -0
- package/runtime/delivery/production.ts +51 -11
- package/runtime/delivery/project-files.ts +16 -11
- package/runtime/delivery/project-rpc.ts +116 -0
- package/runtime/delivery/project.ts +19 -7
- package/runtime/delivery/public-calldata.ts +74 -0
- package/runtime/delivery/release-graph.ts +44 -14
- package/runtime/delivery/release-history-capture.ts +19 -9
- package/runtime/delivery/release-history.ts +76 -22
- package/runtime/delivery/release-inputs.ts +107 -0
- package/runtime/delivery/release.ts +56 -18
- package/runtime/delivery/safe.ts +14 -3
- package/runtime/delivery/same-fork-baseline.ts +5 -4
- package/runtime/delivery/setup.ts +20 -8
- package/runtime/delivery/source.ts +10 -10
- package/runtime/delivery/task-identity.ts +85 -0
- package/runtime/delivery/toolchain.ts +48 -0
- package/runtime/delivery/validation.ts +7 -2
- package/runtime/vendor/plan-codec/index.cjs +97 -20
- package/runtime/vendor/plan-codec/index.d.cts +6 -0
- package/runtime/vendor/plan-codec/provenance.json +9 -8
- package/runtime/workflow/lib/calls.ts +1 -0
- package/runtime/workflow/lib/checkCodeRunner.ts +7 -3
- package/runtime/workflow/lib/context.ts +1 -0
- package/runtime/workflow/lib/create2.ts +7 -108
- package/runtime/workflow/lib/deploymentInfo.ts +8 -0
- package/runtime/workflow/lib/deploymentRecords.ts +3 -1
- package/runtime/workflow/lib/externalExecutionScanner.ts +2 -1
- package/runtime/workflow/lib/gateTool.ts +2 -2
- package/runtime/workflow/lib/gateToolSync.ts +8 -0
- package/runtime/workflow/lib/parameters.ts +4 -0
- package/runtime/workflow/lib/proxy.ts +1 -0
- package/runtime/workflow/run.ts +1 -2
- package/runtime/workflow/steps/deploy.ts +42 -0
- package/runtime/workflow/steps/upgrade.ts +19 -11
- package/bin/workflow.cjs +0 -19
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.writeImmutableDeliveryFile = writeImmutableDeliveryFile;
|
|
7
|
+
exports.persistDevelopmentInputs = persistDevelopmentInputs;
|
|
8
|
+
/** One immutable copy of the original development preparation, reused by release history. */
|
|
9
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
+
const node_crypto_1 = require("node:crypto");
|
|
12
|
+
const canonicalData_1 = require("../workflow/lib/canonicalData");
|
|
13
|
+
const materialization_1 = require("./materialization");
|
|
14
|
+
const input_files_1 = require("./input-files");
|
|
15
|
+
const project_files_1 = require("./project-files");
|
|
16
|
+
const plan_1 = require("./plan");
|
|
17
|
+
const protocol_1 = require("./protocol");
|
|
18
|
+
/** Publish complete bytes without replacing another writer's immutable file. */
|
|
19
|
+
function writeImmutableDeliveryFile(root, relative, bytes) {
|
|
20
|
+
const file = (0, materialization_1.developmentPath)(root, relative);
|
|
21
|
+
const existing = () => { if (!(0, input_files_1.readInputBytes)(root, relative).equals(bytes))
|
|
22
|
+
throw Error(`Immutable delivery file conflict: ${relative}`); };
|
|
23
|
+
if (node_fs_1.default.existsSync(file)) {
|
|
24
|
+
existing();
|
|
25
|
+
return { path: relative, sha256: (0, materialization_1.byteHash)(bytes) };
|
|
26
|
+
}
|
|
27
|
+
node_fs_1.default.mkdirSync(node_path_1.default.dirname(file), { recursive: true, mode: 0o700 });
|
|
28
|
+
const temporary = `${file}.${(0, node_crypto_1.randomUUID)()}.tmp`, fd = node_fs_1.default.openSync(temporary, 'wx', 0o600);
|
|
29
|
+
try {
|
|
30
|
+
node_fs_1.default.writeFileSync(fd, bytes);
|
|
31
|
+
node_fs_1.default.fsyncSync(fd);
|
|
32
|
+
}
|
|
33
|
+
finally {
|
|
34
|
+
node_fs_1.default.closeSync(fd);
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
try {
|
|
38
|
+
node_fs_1.default.linkSync(temporary, file);
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
if (error.code !== 'EEXIST')
|
|
42
|
+
throw error;
|
|
43
|
+
existing();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
finally {
|
|
47
|
+
node_fs_1.default.unlinkSync(temporary);
|
|
48
|
+
}
|
|
49
|
+
const directory = node_fs_1.default.openSync(node_path_1.default.dirname(file), 'r');
|
|
50
|
+
try {
|
|
51
|
+
node_fs_1.default.fsyncSync(directory);
|
|
52
|
+
}
|
|
53
|
+
finally {
|
|
54
|
+
node_fs_1.default.closeSync(directory);
|
|
55
|
+
}
|
|
56
|
+
return { path: relative, sha256: (0, materialization_1.byteHash)(bytes) };
|
|
57
|
+
}
|
|
58
|
+
function persistDevelopmentInputs(input) {
|
|
59
|
+
const root = node_fs_1.default.realpathSync(input.root), { source, aggregate } = input, plan = (0, plan_1.parseDeliveryPlan)(aggregate.collections[0]?.plan);
|
|
60
|
+
if (source.selection !== 'development' || source.targets.length !== 1 || aggregate.collections.length !== 1 || plan.environment !== 'dev'
|
|
61
|
+
|| (0, project_files_1.projectRoot)(source.workspaceRoot, source.projectRoot) !== root || source.targets[0].executionId !== plan.executionId || source.targets[0].request.network !== plan.target)
|
|
62
|
+
throw Error('Development inputs require the original single-target preparation');
|
|
63
|
+
const id = (0, protocol_1.safeId)(plan.executionId, 'executionId'), base = `.gate-delivery/development/${id}`;
|
|
64
|
+
const sourcePath = `${base}.source.json`, aggregatePath = `${base}.aggregate.json`;
|
|
65
|
+
// Check both existing inputs before publishing either file.
|
|
66
|
+
const entries = [[sourcePath, source], [aggregatePath, aggregate]];
|
|
67
|
+
for (const [file, value] of entries)
|
|
68
|
+
if (node_fs_1.default.existsSync((0, materialization_1.developmentPath)(root, file)) && (0, canonicalData_1.canonicalJson)(JSON.parse((0, input_files_1.readInputBytes)(root, file).toString())) !== (0, canonicalData_1.canonicalJson)(value))
|
|
69
|
+
throw Error(`Immutable delivery file conflict: ${file}`);
|
|
70
|
+
// Existing preparation bytes remain authoritative, including their original JSON formatting.
|
|
71
|
+
for (const [file, value] of entries)
|
|
72
|
+
if (!node_fs_1.default.existsSync((0, materialization_1.developmentPath)(root, file)))
|
|
73
|
+
writeImmutableDeliveryFile(root, file, Buffer.from((0, canonicalData_1.canonicalJson)(value) + '\n'));
|
|
74
|
+
return { sourcePath, aggregatePath };
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=development-inputs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"development-inputs.js","sourceRoot":"","sources":["../../runtime/delivery/development-inputs.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import type { DeploymentChange } from '../workflow/lib/deploymentRecords';
|
|
|
7
7
|
import { type PreparationEntry } from './journal';
|
|
8
8
|
import type { DeliveryCollection } from './planning';
|
|
9
9
|
import type { DeliveryAggregate, DeliveryAggregateOptions } from './aggregate';
|
|
10
|
+
export { persistDevelopmentInputs } from './development-inputs';
|
|
10
11
|
import { type EoaExecutionOptions, type EoaHashReferences } from './eoa';
|
|
11
12
|
export declare function expectedDevelopmentAssertions(collection: Pick<DeliveryCollection, 'plan' | 'verification'>, steps: readonly WorkflowStep[]): VerificationObservation[];
|
|
12
13
|
/** Pure candidate merge; preparations must come from the sealed journal parser. */
|
|
@@ -24,7 +25,7 @@ export declare function mergeDevelopmentRegistration(input: {
|
|
|
24
25
|
updatedAt: string;
|
|
25
26
|
changes: readonly (DeploymentChange & {
|
|
26
27
|
address: string;
|
|
27
|
-
proxyKind?: 'uups';
|
|
28
|
+
proxyKind?: 'uups' | 'transparent';
|
|
28
29
|
})[];
|
|
29
30
|
preparations: readonly PreparationEntry[];
|
|
30
31
|
}): {
|
|
@@ -65,6 +66,7 @@ export declare function createDevelopmentDelivery(options: DevelopmentDeliveryOp
|
|
|
65
66
|
plan: import("./plan").DeliveryPlan;
|
|
66
67
|
envelope: import("./safe").SafeEnvelope;
|
|
67
68
|
unsignedExecTransaction: string;
|
|
69
|
+
unsignedExecReview: import("./calldata-review").CalldataInvocation;
|
|
68
70
|
}[];
|
|
69
71
|
safePreparation: string;
|
|
70
72
|
version: 1;
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.persistDevelopmentInputs = void 0;
|
|
6
7
|
exports.expectedDevelopmentAssertions = expectedDevelopmentAssertions;
|
|
7
8
|
exports.mergeDevelopmentRegistration = mergeDevelopmentRegistration;
|
|
8
9
|
exports.createDevelopmentDelivery = createDevelopmentDelivery;
|
|
@@ -14,6 +15,7 @@ const typescript_1 = __importDefault(require("typescript"));
|
|
|
14
15
|
const existing_code_1 = require("./existing-code");
|
|
15
16
|
const compiler_io_1 = require("./compiler-io");
|
|
16
17
|
const configuration_1 = require("./configuration");
|
|
18
|
+
const execution_identity_1 = require("./execution-identity");
|
|
17
19
|
const ethers_1 = require("ethers");
|
|
18
20
|
const workflow_1 = require("gate-evm-tools/workflow");
|
|
19
21
|
const canonicalData_1 = require("../workflow/lib/canonicalData");
|
|
@@ -26,6 +28,8 @@ const verification_1 = require("./verification");
|
|
|
26
28
|
const plan_1 = require("./plan");
|
|
27
29
|
const identities_1 = require("./identities");
|
|
28
30
|
const journal_1 = require("./journal");
|
|
31
|
+
var development_inputs_1 = require("./development-inputs");
|
|
32
|
+
Object.defineProperty(exports, "persistDevelopmentInputs", { enumerable: true, get: function () { return development_inputs_1.persistDevelopmentInputs; } });
|
|
29
33
|
const aggregate_inputs_1 = require("./aggregate-inputs");
|
|
30
34
|
const config_1 = require("./config");
|
|
31
35
|
const input_files_1 = require("./input-files");
|
|
@@ -95,7 +99,7 @@ function mergeDevelopmentRegistration(input) {
|
|
|
95
99
|
const previous = (0, deployments_1.resolveDeployment)(registry, target, c.instanceId);
|
|
96
100
|
if (previous && previous.key !== c.contractInfoKey) {
|
|
97
101
|
const entry = input.preparations.find(p => p.stepId === c.stepId), request = entry?.prepared.request;
|
|
98
|
-
if (c.kind !== 'upgrade' || c.proxyKind
|
|
102
|
+
if (c.kind !== 'upgrade' || !['uups', 'transparent'].includes(c.proxyKind ?? '') || entry?.change.kind !== 'upgrade' || !request || !(request.kind === 'uups-upgrade' || request.kind === 'transparent-upgrade') || entry.prepared.plan.kind !== request.kind
|
|
99
103
|
|| entry.change.instanceId !== c.instanceId || entry.change.contractInfoKey !== c.contractInfoKey || entry.change.actualContract !== c.actualContract
|
|
100
104
|
|| previous.address.toLowerCase() !== request.proxy.toLowerCase() || previous.address.toLowerCase() !== c.address.toLowerCase() || c.proxyAddress?.toLowerCase() !== request.proxy.toLowerCase())
|
|
101
105
|
throw Error('Contract candidate key conflict');
|
|
@@ -104,7 +108,7 @@ function mergeDevelopmentRegistration(input) {
|
|
|
104
108
|
if (previous && previous.address.toLowerCase() !== c.address.toLowerCase() && c.previousAddress?.toLowerCase() !== previous.address.toLowerCase())
|
|
105
109
|
throw Error('Contract candidate address conflict');
|
|
106
110
|
registry[target][c.contractInfoKey] = c.address;
|
|
107
|
-
metadata.networks[target][c.instanceId] = { contractInfoKey: c.contractInfoKey, address: c.address, actualContract: c.actualContract, ...(c.proxyKind ? { proxyKind: c.proxyKind, implementationAddress: c.implementationAddress } : {}), source: { kind: 'deployment', deploymentId: input.deploymentId, executionId: input.executionId, recordPath: input.recordPath }, updatedAt: input.updatedAt };
|
|
111
|
+
metadata.networks[target][c.instanceId] = { contractInfoKey: c.contractInfoKey, address: c.address, actualContract: c.actualContract, ...(c.proxyKind ? { proxyKind: c.proxyKind, implementationAddress: c.implementationAddress, ...(c.proxyKind === 'transparent' ? { proxyAdminAddress: c.proxyAdminAddress, proxyAdminOwner: c.proxyAdminOwner } : {}) } : {}), source: { kind: 'deployment', deploymentId: input.deploymentId, executionId: input.executionId, recordPath: input.recordPath }, updatedAt: input.updatedAt };
|
|
108
112
|
}
|
|
109
113
|
return { registry: (0, deployments_1.validateContractInfo)(registry), metadata: (0, deploymentInfo_1.validateDeploymentInfo)(metadata) };
|
|
110
114
|
}
|
|
@@ -125,7 +129,7 @@ async function createDevelopmentDelivery(options) {
|
|
|
125
129
|
if (!plan.transactions.length)
|
|
126
130
|
throw Error('Development acceptance requires actual transactions');
|
|
127
131
|
const rows = aggregate.inputs.targets;
|
|
128
|
-
const computed = (0,
|
|
132
|
+
const computed = (0, execution_identity_1.aggregateInputHash)(aggregate);
|
|
129
133
|
same(plan.deploymentId, aggregate.inputs.business.deploymentId, 'Business deployment identity');
|
|
130
134
|
same(computed, aggregate.inputsHash, 'Aggregate input hash');
|
|
131
135
|
same(plan.inputsHash, computed, 'Plan inputs');
|
|
@@ -225,6 +229,14 @@ async function createDevelopmentDelivery(options) {
|
|
|
225
229
|
if (code === '0x' || !checker.compareBytecode(code, local.bytecode, local.abi, local.immutableReferences).matches)
|
|
226
230
|
throw Error('Existing development code mismatch');
|
|
227
231
|
}
|
|
232
|
+
for (const alias of coverage.aliases) {
|
|
233
|
+
const m = base.metadata.networks[plan.target]?.[alias];
|
|
234
|
+
if (m?.proxyKind === 'transparent') {
|
|
235
|
+
if (!m.proxyAdminAddress || !m.proxyAdminOwner)
|
|
236
|
+
throw Error('Missing frozen existing Transparent admin');
|
|
237
|
+
await (0, workflow_1.verifyTransparentAdmin)({ hre: hre, proxy: m.address, admin: m.proxyAdminAddress, owner: m.proxyAdminOwner });
|
|
238
|
+
}
|
|
239
|
+
}
|
|
228
240
|
for (const m of coverage.manifests) {
|
|
229
241
|
if ((0, materialization_1.byteHash)((0, input_files_1.readInputBytes)(root, m.file)) !== m.hash)
|
|
230
242
|
throw Error('Existing UUPS manifest changed');
|
|
@@ -261,7 +273,7 @@ async function createDevelopmentDelivery(options) {
|
|
|
261
273
|
const code = await hre.ethers.provider.getCode(deployment.address);
|
|
262
274
|
if (code === '0x')
|
|
263
275
|
throw Error('Prepared deployment has no actual code');
|
|
264
|
-
const name = deployment.role === 'proxy' ? '@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol:ERC1967Proxy' : p.contract;
|
|
276
|
+
const name = deployment.role === 'proxy' ? (p.proxyKind === 'transparent' ? workflow_1.TRANSPARENT_PROXY_ARTIFACT : '@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol:ERC1967Proxy') : p.contract;
|
|
265
277
|
const local = await checker.getLocalBytecode(name), comparison = checker.compareBytecode(code, local.bytecode, local.abi, local.immutableReferences);
|
|
266
278
|
if (!comparison.matches)
|
|
267
279
|
throw Error(`Prepared deployed code mismatch: ${name}`);
|
|
@@ -269,13 +281,13 @@ async function createDevelopmentDelivery(options) {
|
|
|
269
281
|
const deployed = p.deployments.find(d => d.role === 'proxy')?.address ?? ('proxy' in r ? r.proxy : p.deployments.find(d => d.role === 'contract')?.address);
|
|
270
282
|
if (!deployed)
|
|
271
283
|
throw Error('Prepared deployment address missing');
|
|
272
|
-
const change = { ...entry.change, address: deployed, ...(p.proxyKind
|
|
284
|
+
const change = { ...entry.change, address: deployed, ...(p.proxyKind ? { proxyAddress: deployed, proxyKind: p.proxyKind } : {}) };
|
|
273
285
|
changes.set(change.instanceId, change);
|
|
274
286
|
}
|
|
275
287
|
for (const change of changes.values())
|
|
276
|
-
if (change.proxyKind === 'uups') {
|
|
288
|
+
if (change.proxyKind === 'uups' || change.proxyKind === 'transparent') {
|
|
277
289
|
const entry = [...preparations].reverse().find(p => p.change.instanceId === change.instanceId);
|
|
278
|
-
const candidate = await (0, workflow_1.prepareEvmManifestCandidate)({ root, scheme: 'evm', network: plan.target, target: plan.target, proxy: change.address, contract: entry.prepared.plan.contract, constructorArgs: change.constructorArgs ?? [], skipTxHash: true, hre, compile: false });
|
|
290
|
+
const candidate = await (0, workflow_1.prepareEvmManifestCandidate)({ root, scheme: 'evm', network: plan.target, target: plan.target, proxy: change.address, proxyKind: change.proxyKind, proxyAdminAddress: change.proxyAdminAddress, proxyAdminOwner: change.proxyAdminOwner, contract: entry.prepared.plan.contract, constructorArgs: change.constructorArgs ?? [], skipTxHash: true, hre, compile: false });
|
|
279
291
|
const expectedImplementation = entry.prepared.plan.deployments.find(d => d.role === 'implementation')?.address ?? change.implementationAddress;
|
|
280
292
|
if (!expectedImplementation || candidate.implementation.toLowerCase() !== expectedImplementation.toLowerCase())
|
|
281
293
|
throw Error('Final UUPS implementation mismatch');
|
|
@@ -333,7 +345,7 @@ async function createDevelopmentDelivery(options) {
|
|
|
333
345
|
});
|
|
334
346
|
for (const candidate of state.candidates) {
|
|
335
347
|
const manifest = (0, workflow_1.parseTargetManifest)(node_fs_1.default.readFileSync(candidate.paths.file)), entry = manifest.impls[candidate.versionKey];
|
|
336
|
-
if (!entry || ![entry.address, ...(entry.allAddresses ?? [])].some(a => a.toLowerCase() === candidate.implementation) || (0, workflow_1.hashStorageLayout)(entry.layout) !== candidate.layoutHash || !manifest.proxies.some(p => p.address.toLowerCase() === candidate.proxy && p.kind ===
|
|
348
|
+
if (!entry || ![entry.address, ...(entry.allAddresses ?? [])].some(a => a.toLowerCase() === candidate.implementation) || (0, workflow_1.hashStorageLayout)(entry.layout) !== candidate.layoutHash || !manifest.proxies.some(p => p.address.toLowerCase() === candidate.proxy && p.kind === candidate.proxyKind))
|
|
337
349
|
throw Error('Committed target manifest mismatch');
|
|
338
350
|
}
|
|
339
351
|
return { journal: result, changes: state.changes, manifests: !preparations.length ? pureCoverage().manifests : state.candidates.map(c => ({ file: node_path_1.default.relative(root, c.paths.file), hash: (0, materialization_1.byteHash)(node_fs_1.default.readFileSync(c.paths.file)), layoutHash: c.layoutHash, proxy: c.proxy, implementation: c.implementation })) };
|
|
@@ -360,8 +372,10 @@ async function createDevelopmentDelivery(options) {
|
|
|
360
372
|
effective[plan.target][c.contractInfoKey] = c.address;
|
|
361
373
|
const alias = c.contractInfoKey.includes(':') ? c.contractInfoKey.split(':')[0] : c.contractInfoKey;
|
|
362
374
|
expectedCode.push({ key: alias, contract: c.actualContract, address: c.implementationAddress ?? c.address });
|
|
363
|
-
if (c.proxyKind
|
|
364
|
-
expectedCode.push({ key: `${alias}_Proxy`, contract: 'ERC1967Proxy', address: c.address });
|
|
375
|
+
if (c.proxyKind)
|
|
376
|
+
expectedCode.push({ key: `${alias}_Proxy`, contract: c.proxyKind === 'transparent' ? 'TransparentUpgradeableProxy' : 'ERC1967Proxy', address: c.address });
|
|
377
|
+
if (c.proxyKind === 'transparent')
|
|
378
|
+
expectedCode.push({ key: `${alias}_ProxyAdmin`, contract: 'ProxyAdmin', address: c.proxyAdminAddress });
|
|
365
379
|
}
|
|
366
380
|
if (!preparations.length) {
|
|
367
381
|
const coverage = pureCoverage();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"development.js","sourceRoot":"","sources":["../../runtime/delivery/development.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"development.js","sourceRoot":"","sources":["../../runtime/delivery/development.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,6 +55,7 @@ export declare function createDeliveryEoaExecution(options: EoaExecutionOptions)
|
|
|
55
55
|
plan: import("./plan").DeliveryPlan;
|
|
56
56
|
envelope: import("./safe").SafeEnvelope;
|
|
57
57
|
unsignedExecTransaction: string;
|
|
58
|
+
unsignedExecReview: import("./calldata-review").CalldataInvocation;
|
|
58
59
|
}[];
|
|
59
60
|
safePreparation: string;
|
|
60
61
|
version: 1;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Environment labels are evidence; actual source, dependency and compiler inputs remain binding. */
|
|
2
|
+
import type { RuntimeEvidence } from './configuration-runtime';
|
|
3
|
+
import { type CustomInputClosure } from './closure-format';
|
|
4
|
+
import type { DeliveryAggregate } from './aggregate';
|
|
5
|
+
export declare function runtimeExecutionInput(runtime: RuntimeEvidence): Omit<RuntimeEvidence, 'node'>;
|
|
6
|
+
export declare function compilerExecutionInput<T extends {
|
|
7
|
+
node: string;
|
|
8
|
+
platform: string;
|
|
9
|
+
arch: string;
|
|
10
|
+
abi: string;
|
|
11
|
+
}>(toolchain: T): Omit<T, 'node' | 'platform' | 'arch' | 'abi'>;
|
|
12
|
+
/** Only resolver version and its derived exact hash are omitted; all actual edges/emitted bytes stay. */
|
|
13
|
+
export declare function customExecutionInput(raw: CustomInputClosure | null): unknown;
|
|
14
|
+
/** Collection, dev execution and historical validation share the same preimage. */
|
|
15
|
+
export declare function aggregateInputHash(a: Pick<DeliveryAggregate, 'inputs'>): string;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runtimeExecutionInput = runtimeExecutionInput;
|
|
4
|
+
exports.compilerExecutionInput = compilerExecutionInput;
|
|
5
|
+
exports.customExecutionInput = customExecutionInput;
|
|
6
|
+
exports.aggregateInputHash = aggregateInputHash;
|
|
7
|
+
const closure_format_1 = require("./closure-format");
|
|
8
|
+
const canonicalData_1 = require("../workflow/lib/canonicalData");
|
|
9
|
+
function runtimeExecutionInput(runtime) {
|
|
10
|
+
const { node: _environment, ...inputs } = runtime;
|
|
11
|
+
return inputs;
|
|
12
|
+
}
|
|
13
|
+
function compilerExecutionInput(toolchain) {
|
|
14
|
+
const { node: _node, platform: _platform, arch: _arch, abi: _abi, ...inputs } = toolchain;
|
|
15
|
+
return inputs;
|
|
16
|
+
}
|
|
17
|
+
/** Only resolver version and its derived exact hash are omitted; all actual edges/emitted bytes stay. */
|
|
18
|
+
function customExecutionInput(raw) {
|
|
19
|
+
if (raw === null)
|
|
20
|
+
return null;
|
|
21
|
+
const { closureHash: _exactHash, resolver, ...inputs } = (0, closure_format_1.parseCustomInputClosure)(raw);
|
|
22
|
+
const { version: _nodeVersion, ...policy } = resolver;
|
|
23
|
+
return { ...inputs, resolver: policy };
|
|
24
|
+
}
|
|
25
|
+
/** Collection, dev execution and historical validation share the same preimage. */
|
|
26
|
+
function aggregateInputHash(a) {
|
|
27
|
+
return (0, canonicalData_1.semanticHash)({ version: 1, business: a.inputs.business, sourceDefinitions: a.inputs.sourceDefinitions,
|
|
28
|
+
runtime: runtimeExecutionInput(a.inputs.runtime), files: a.inputs.files,
|
|
29
|
+
targets: a.inputs.targets.map(row => ({ target: row.target, configuration: row.configuration.configurationRuntimeHash,
|
|
30
|
+
sourceConfiguration: row.sourceConfiguration.configurationRuntimeHash, compiler: row.compiler.stableDigest,
|
|
31
|
+
custom: customExecutionInput(row.custom) })) });
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=execution-identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-identity.js","sourceRoot":"","sources":["../../runtime/delivery/execution-identity.ts"],"names":[],"mappings":";;AAMA,sDAGC;AAED,wDAGC;AAGD,oDAKC;AAGD,gDAMC;AA7BD,qDAAoF;AACpF,iEAA6D;AAG7D,SAAgB,qBAAqB,CAAC,OAAwB;IAC5D,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,sBAAsB,CAA0E,SAAY;IAC1H,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,yGAAyG;AACzG,SAAgB,oBAAoB,CAAC,GAA8B;IACjE,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,IAAA,wCAAuB,EAAC,GAAG,CAAC,CAAC;IACtF,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC;IACtD,OAAO,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC;AAED,mFAAmF;AACnF,SAAgB,kBAAkB,CAAC,CAAoC;IACrE,OAAO,IAAA,4BAAY,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAC1G,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK;QACvE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,wBAAwB;YACnH,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,CAAC,wBAAwB,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,YAAY;YAC1G,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACtD,CAAC"}
|
|
@@ -39,13 +39,18 @@ function existingCodeCoverage(input) {
|
|
|
39
39
|
throw Error('Existing code metadata registration mismatch');
|
|
40
40
|
aliases.push(alias);
|
|
41
41
|
effective[input.target][key] = address;
|
|
42
|
-
if (m?.proxyKind && m.proxyKind !== 'uups')
|
|
42
|
+
if (m?.proxyKind && m.proxyKind !== 'uups' && m.proxyKind !== 'transparent')
|
|
43
43
|
throw Error('Unsupported existing proxy kind');
|
|
44
|
-
if (m?.proxyKind === 'uups') {
|
|
44
|
+
if (m?.proxyKind === 'uups' || m?.proxyKind === 'transparent') {
|
|
45
45
|
const implementation = m.implementationAddress.toLowerCase();
|
|
46
46
|
add(alias, contract, implementation);
|
|
47
|
-
add(`${alias}_Proxy`, 'ERC1967Proxy', address);
|
|
48
|
-
|
|
47
|
+
add(`${alias}_Proxy`, m.proxyKind === 'transparent' ? workflow_1.TRANSPARENT_PROXY_ARTIFACT : 'ERC1967Proxy', address);
|
|
48
|
+
if (m.proxyKind === 'transparent') {
|
|
49
|
+
if (m.proxyAdminAddress?.toLowerCase() !== (0, workflow_1.transparentAdminAddress)(address) || !m.proxyAdminOwner)
|
|
50
|
+
throw Error('Missing existing Transparent admin identity');
|
|
51
|
+
add(`${alias}_ProxyAdmin`, workflow_1.PROXY_ADMIN_ARTIFACT, m.proxyAdminAddress);
|
|
52
|
+
}
|
|
53
|
+
const owned = input.manifests.flatMap(file => { const manifest = (0, workflow_1.parseTargetManifest)(Buffer.from(file.contents)); const proxies = manifest.proxies.filter(p => p.address.toLowerCase() === address), impls = Object.entries(manifest.impls).filter(([, v]) => v && [v.address, ...(v.allAddresses ?? [])].some(a => a.toLowerCase() === implementation)); return proxies.length === 1 && proxies[0].kind === m.proxyKind && impls.length === 1 ? [{ file: file.path, hash: (0, materialization_1.byteHash)(file.contents), layoutHash: (0, workflow_1.hashStorageLayout)(impls[0][1].layout), proxy: address, implementation }] : []; });
|
|
49
54
|
if (owned.length !== 1)
|
|
50
55
|
throw Error('Missing unique sealed existing UUPS manifest');
|
|
51
56
|
manifests.push(owned[0]);
|
|
@@ -66,8 +71,11 @@ async function collectExistingCodeArtifacts(input) {
|
|
|
66
71
|
throw Error('Existing code target requires unique frozen registration');
|
|
67
72
|
const [key] = entries[0], m = metadata[key.split(':')[0]];
|
|
68
73
|
names.add(m?.actualContract ?? key.split(':').at(-1));
|
|
69
|
-
if (m?.proxyKind === 'uups')
|
|
70
|
-
names.add('@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol:ERC1967Proxy');
|
|
74
|
+
if (m?.proxyKind === 'uups' || m?.proxyKind === 'transparent') {
|
|
75
|
+
names.add(m.proxyKind === 'transparent' ? workflow_1.TRANSPARENT_PROXY_ARTIFACT : '@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol:ERC1967Proxy');
|
|
76
|
+
if (m.proxyKind === 'transparent')
|
|
77
|
+
names.add(workflow_1.PROXY_ADMIN_ARTIFACT);
|
|
78
|
+
}
|
|
71
79
|
}
|
|
72
80
|
for (const name of names)
|
|
73
81
|
await input.readArtifact(name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"existing-code.js","sourceRoot":"","sources":["../../runtime/delivery/existing-code.ts"],"names":[],"mappings":";;AASA,8DAEC;AACD,
|
|
1
|
+
{"version":3,"file":"existing-code.js","sourceRoot":"","sources":["../../runtime/delivery/existing-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.readHistoricalPackage = readHistoricalPackage;
|
|
4
|
+
/** Verify retained producer bytes in memory. Historical code is never extracted or executed. */
|
|
5
|
+
const node_crypto_1 = require("node:crypto");
|
|
6
|
+
const node_zlib_1 = require("node:zlib");
|
|
7
|
+
const materialization_1 = require("./materialization");
|
|
8
|
+
const protocol_1 = require("./protocol");
|
|
9
|
+
const canonicalData_1 = require("../workflow/lib/canonicalData");
|
|
10
|
+
function readHistoricalPackage(archive, archiveFile, aggregate) {
|
|
11
|
+
if (archiveFile !== `.gate-delivery/packages/${(0, materialization_1.byteHash)(archive)}.json.gz`)
|
|
12
|
+
throw Error('Historical archive content address mismatch');
|
|
13
|
+
const snapshot = (0, protocol_1.object)(JSON.parse((0, node_zlib_1.gunzipSync)(archive, { maxOutputLength: 128 * 1024 * 1024 }).toString()), 'historical package snapshot', ['schema', 'version', 'runtimeIdentity', 'observedPackage', 'files']);
|
|
14
|
+
if (snapshot.schema !== 'gate-delivery-package-snapshot' || snapshot.version !== 2 || !Array.isArray(snapshot.files))
|
|
15
|
+
throw Error('Invalid historical package snapshot archive');
|
|
16
|
+
const original = aggregate.inputs.runtime.package;
|
|
17
|
+
const same = (a, b, label) => { if ((0, canonicalData_1.canonicalJson)(a) !== (0, canonicalData_1.canonicalJson)(b))
|
|
18
|
+
throw Error(`${label} mismatch`); };
|
|
19
|
+
same(snapshot.observedPackage, original, 'Historical snapshot provenance');
|
|
20
|
+
same(snapshot.runtimeIdentity, aggregate.inputs.runtime.declared, 'Historical snapshot runtime');
|
|
21
|
+
const files = new Map();
|
|
22
|
+
for (const raw of snapshot.files) {
|
|
23
|
+
const file = (0, protocol_1.object)(raw, 'historical package member', ['path', 'digest', 'base64']), relative = (0, protocol_1.portablePath)(file.path, 'historical package member');
|
|
24
|
+
if (relative.split('/').includes('node_modules') || files.has(relative) || typeof file.base64 !== 'string')
|
|
25
|
+
throw Error('Invalid historical package member');
|
|
26
|
+
const bytes = Buffer.from(file.base64, 'base64');
|
|
27
|
+
if (bytes.toString('base64') !== file.base64 || (0, materialization_1.byteHash)(bytes) !== file.digest)
|
|
28
|
+
throw Error('Historical snapshot archive bytes mismatch');
|
|
29
|
+
files.set(relative, bytes);
|
|
30
|
+
}
|
|
31
|
+
const payload = [...files].map(([path, bytes]) => ({ path, digest: (0, materialization_1.byteHash)(bytes) }));
|
|
32
|
+
same(payload, original.payload, 'Historical archive complete payload');
|
|
33
|
+
same((0, materialization_1.byteHash)(payload.map(f => `${f.path}\0${f.digest}\n`).join('')), original.payloadDigest, 'Historical payload digest');
|
|
34
|
+
// Match the producer's sorted directory traversal, including file/directory prefix ordering.
|
|
35
|
+
const children = new Map();
|
|
36
|
+
for (const relative of files.keys()) {
|
|
37
|
+
const parts = relative.split('/');
|
|
38
|
+
let directory = '';
|
|
39
|
+
for (let i = 0; i < parts.length; i++) {
|
|
40
|
+
if (files.has(directory))
|
|
41
|
+
throw Error('Historical package file/directory collision');
|
|
42
|
+
if (!children.has(directory))
|
|
43
|
+
children.set(directory, new Set());
|
|
44
|
+
children.get(directory).add(parts[i]);
|
|
45
|
+
directory = directory ? `${directory}/${parts[i]}` : parts[i];
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const digest = (0, node_crypto_1.createHash)('sha256');
|
|
49
|
+
const visit = (directory) => {
|
|
50
|
+
const names = children.get(directory);
|
|
51
|
+
if (!names)
|
|
52
|
+
throw Error('Historical executable directory missing');
|
|
53
|
+
for (const name of [...names].sort()) {
|
|
54
|
+
const relative = `${directory}/${name}`, bytes = files.get(relative);
|
|
55
|
+
if (bytes) {
|
|
56
|
+
if (/\.(?:c?js)$/.test(relative)) {
|
|
57
|
+
digest.update(relative);
|
|
58
|
+
digest.update(bytes);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else
|
|
62
|
+
visit(relative);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
for (const directory of ['dist-runtime', 'dist', 'dist-cjs', 'bin'])
|
|
66
|
+
visit(directory);
|
|
67
|
+
same(digest.digest('hex'), aggregate.inputs.runtime.declared.digest, 'Historical executable runtime digest');
|
|
68
|
+
return files;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=history-package.js.map
|