gate-evm-tools 1.0.23 → 1.0.24

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.
Files changed (89) hide show
  1. package/README.md +64 -5
  2. package/bin/manifest-bootstrap.js +109 -3
  3. package/dist/commands/prepare.d.ts +8 -0
  4. package/dist/commands/prepare.d.ts.map +1 -0
  5. package/dist/commands/prepare.js +78 -0
  6. package/dist/commands/prepare.js.map +1 -0
  7. package/dist/commands/sync.d.ts.map +1 -1
  8. package/dist/commands/sync.js +11 -28
  9. package/dist/commands/sync.js.map +1 -1
  10. package/dist/core/preparation/artifacts.d.ts +21 -0
  11. package/dist/core/preparation/artifacts.d.ts.map +1 -0
  12. package/dist/core/preparation/artifacts.js +80 -0
  13. package/dist/core/preparation/artifacts.js.map +1 -0
  14. package/dist/core/preparation/evm.d.ts +39 -0
  15. package/dist/core/preparation/evm.d.ts.map +1 -0
  16. package/dist/core/preparation/evm.js +290 -0
  17. package/dist/core/preparation/evm.js.map +1 -0
  18. package/dist/core/preparation/index.d.ts +9 -0
  19. package/dist/core/preparation/index.d.ts.map +1 -0
  20. package/dist/core/preparation/index.js +15 -0
  21. package/dist/core/preparation/index.js.map +1 -0
  22. package/dist/core/preparation/manifest.d.ts +43 -0
  23. package/dist/core/preparation/manifest.d.ts.map +1 -0
  24. package/dist/core/preparation/manifest.js +169 -0
  25. package/dist/core/preparation/manifest.js.map +1 -0
  26. package/dist/core/preparation/normalize.d.ts +7 -0
  27. package/dist/core/preparation/normalize.d.ts.map +1 -0
  28. package/dist/core/preparation/normalize.js +496 -0
  29. package/dist/core/preparation/normalize.js.map +1 -0
  30. package/dist/core/preparation/types.d.ts +111 -0
  31. package/dist/core/preparation/types.d.ts.map +1 -0
  32. package/dist/core/preparation/types.js +2 -0
  33. package/dist/core/preparation/types.js.map +1 -0
  34. package/dist/core/preparation/zkManifestSync.d.ts +49 -0
  35. package/dist/core/preparation/zkManifestSync.d.ts.map +1 -0
  36. package/dist/core/preparation/zkManifestSync.js +159 -0
  37. package/dist/core/preparation/zkManifestSync.js.map +1 -0
  38. package/dist/core/preparation/zkUpgradeValidation.d.ts +37 -0
  39. package/dist/core/preparation/zkUpgradeValidation.d.ts.map +1 -0
  40. package/dist/core/preparation/zkUpgradeValidation.js +91 -0
  41. package/dist/core/preparation/zkUpgradeValidation.js.map +1 -0
  42. package/dist/core/preparation/zksync.d.ts +28 -0
  43. package/dist/core/preparation/zksync.d.ts.map +1 -0
  44. package/dist/core/preparation/zksync.js +248 -0
  45. package/dist/core/preparation/zksync.js.map +1 -0
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +20 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/sync/index.d.ts +31 -0
  50. package/dist/sync/index.d.ts.map +1 -0
  51. package/dist/sync/index.js +57 -0
  52. package/dist/sync/index.js.map +1 -0
  53. package/dist/types.d.ts +9 -1
  54. package/dist/types.d.ts.map +1 -1
  55. package/dist/workflow/index.d.ts +5 -0
  56. package/dist/workflow/index.d.ts.map +1 -0
  57. package/dist/workflow/index.js +3 -0
  58. package/dist/workflow/index.js.map +1 -0
  59. package/dist-cjs/core/preparation/artifacts.js +89 -0
  60. package/dist-cjs/core/preparation/artifacts.js.map +1 -0
  61. package/dist-cjs/core/preparation/evm.js +297 -0
  62. package/dist-cjs/core/preparation/evm.js.map +1 -0
  63. package/dist-cjs/core/preparation/index.js +19 -0
  64. package/dist-cjs/core/preparation/index.js.map +1 -0
  65. package/dist-cjs/core/preparation/manifest.js +180 -0
  66. package/dist-cjs/core/preparation/manifest.js.map +1 -0
  67. package/dist-cjs/core/preparation/normalize.js +507 -0
  68. package/dist-cjs/core/preparation/normalize.js.map +1 -0
  69. package/dist-cjs/core/preparation/types.js +3 -0
  70. package/dist-cjs/core/preparation/types.js.map +1 -0
  71. package/dist-cjs/core/preparation/zkManifestSync.js +166 -0
  72. package/dist-cjs/core/preparation/zkManifestSync.js.map +1 -0
  73. package/dist-cjs/core/preparation/zkUpgradeValidation.js +101 -0
  74. package/dist-cjs/core/preparation/zkUpgradeValidation.js.map +1 -0
  75. package/dist-cjs/core/preparation/zksync.js +252 -0
  76. package/dist-cjs/core/preparation/zksync.js.map +1 -0
  77. package/dist-cjs/core/syncUpgradeJson.js +315 -0
  78. package/dist-cjs/core/syncUpgradeJson.js.map +1 -0
  79. package/dist-cjs/sync/index.js +60 -0
  80. package/dist-cjs/sync/index.js.map +1 -0
  81. package/dist-cjs/types.js +3 -0
  82. package/dist-cjs/types.js.map +1 -0
  83. package/dist-cjs/utils/manifestTransaction.js +302 -0
  84. package/dist-cjs/utils/manifestTransaction.js.map +1 -0
  85. package/dist-cjs/utils/openzeppelin.js +57 -0
  86. package/dist-cjs/utils/openzeppelin.js.map +1 -0
  87. package/dist-cjs/workflow/index.js +12 -0
  88. package/dist-cjs/workflow/index.js.map +1 -0
  89. package/package.json +42 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../src/core/preparation/evm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.prepareWorkflow = void 0;
4
+ const evm_js_1 = require("./evm.js");
5
+ const zksync_js_1 = require("./zksync.js");
6
+ const normalize_js_1 = require("./normalize.js");
7
+ const prepareWorkflow = async (hre, rawRequest) => {
8
+ const request = (0, normalize_js_1.normalizePreparationRequest)(rawRequest);
9
+ if (hre.network.name !== request.network) {
10
+ throw new Error(`preparation request network ${request.network} does not match Hardhat network ${hre.network.name}`);
11
+ }
12
+ await hre.run('compile', { quiet: true });
13
+ if (request.scheme === 'evm') {
14
+ return (0, evm_js_1.prepareEvm)(hre, request);
15
+ }
16
+ return (0, zksync_js_1.prepareZkSync)(hre, request);
17
+ };
18
+ exports.prepareWorkflow = prepareWorkflow;
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/preparation/index.ts"],"names":[],"mappings":";;;AAAA,qCAAsC;AACtC,2CAA4C;AAC5C,iDAA6D;AAWtD,MAAM,eAAe,GAAG,KAAK,EAClC,GAA2B,EAC3B,UAAmB,EACiB,EAAE;IACtC,MAAM,OAAO,GAAiC,IAAA,0CAA2B,EAAC,UAAU,CAAC,CAAC;IACtF,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CACb,+BAA+B,OAAO,CAAC,OAAO,mCAAmC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CACpG,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC7B,OAAO,IAAA,mBAAU,EAAC,GAAkD,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,IAAA,yBAAa,EAAC,GAAqD,EAAE,OAAO,CAAC,CAAC;AACvF,CAAC,CAAC;AAfW,QAAA,eAAe,mBAe1B"}
@@ -0,0 +1,180 @@
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.hashStorageLayout = exports.readRegisteredZkUpgradeState = exports.parseTargetManifest = exports.resolveTargetManifestPaths = exports.resolveTargetManifestDirectory = void 0;
7
+ const node_crypto_1 = __importDefault(require("node:crypto"));
8
+ const node_fs_1 = __importDefault(require("node:fs"));
9
+ const node_path_1 = __importDefault(require("node:path"));
10
+ const yaml_1 = __importDefault(require("yaml"));
11
+ const upgrades_core_1 = require("@openzeppelin/upgrades-core");
12
+ const normalize_js_1 = require("./normalize.js");
13
+ const SAFE_TARGET = /^[A-Za-z0-9][A-Za-z0-9_-]{0,199}$/;
14
+ const SAFE_MANIFEST_DIR = /^\.openzeppelin(?:\.[a-z0-9][a-z0-9-]*)?$/;
15
+ const ENVIRONMENTS = new Set(['local', 'development', 'production']);
16
+ const regularFile = (filePath, label) => {
17
+ if (!node_fs_1.default.existsSync(filePath))
18
+ throw new Error(`${label} is missing: ${filePath}`);
19
+ const stat = node_fs_1.default.lstatSync(filePath);
20
+ if (stat.isSymbolicLink())
21
+ throw new Error(`${label} cannot be a symlink`);
22
+ if (!stat.isFile())
23
+ throw new Error(`${label} must be a regular file`);
24
+ };
25
+ const assertManifestDirectory = (root, manifestDir) => {
26
+ if (!SAFE_MANIFEST_DIR.test(manifestDir) || manifestDir === '.upgradable') {
27
+ throw new Error(`unsafe OpenZeppelin manifest directory: ${manifestDir}`);
28
+ }
29
+ const resolvedRoot = node_path_1.default.resolve(root);
30
+ const candidate = node_path_1.default.resolve(resolvedRoot, manifestDir);
31
+ if (node_path_1.default.dirname(candidate) !== resolvedRoot) {
32
+ throw new Error(`OpenZeppelin manifest directory escapes the project: ${manifestDir}`);
33
+ }
34
+ if (node_fs_1.default.existsSync(candidate)) {
35
+ const stat = node_fs_1.default.lstatSync(candidate);
36
+ if (stat.isSymbolicLink()) {
37
+ throw new Error(`OpenZeppelin manifest directory cannot be a symlink: ${manifestDir}`);
38
+ }
39
+ if (!stat.isDirectory()) {
40
+ throw new Error(`OpenZeppelin manifest path must be a directory: ${manifestDir}`);
41
+ }
42
+ }
43
+ return candidate;
44
+ };
45
+ const resolveTargetManifestDirectory = (root, target, env = process.env) => {
46
+ if (!SAFE_TARGET.test(target) || target.startsWith('_')) {
47
+ throw new Error(`invalid manifest target: ${target}`);
48
+ }
49
+ const resolvedRoot = node_path_1.default.resolve(root);
50
+ const configFile = node_path_1.default.join(resolvedRoot, 'config.yaml');
51
+ regularFile(configFile, 'config.yaml');
52
+ const parsed = yaml_1.default.parse(node_fs_1.default.readFileSync(configFile, 'utf8'), { merge: true });
53
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
54
+ throw new Error('config.yaml must define target keys at the top level');
55
+ }
56
+ const selected = parsed[target];
57
+ if (!selected || typeof selected !== 'object' || Array.isArray(selected)) {
58
+ throw new Error(`config.yaml has no target ${target}`);
59
+ }
60
+ const config = selected;
61
+ if (!ENVIRONMENTS.has(String(config.environment))) {
62
+ throw new Error(`config.yaml target ${target} has an invalid environment`);
63
+ }
64
+ const manifestDir = config.openzeppelin?.manifestDir;
65
+ if (typeof manifestDir !== 'string') {
66
+ throw new Error(`config.yaml target ${target} must define openzeppelin.manifestDir`);
67
+ }
68
+ if (config.environment === 'production' && manifestDir !== '.openzeppelin') {
69
+ throw new Error(`production target ${target} must use .openzeppelin`);
70
+ }
71
+ if (config.environment !== 'production' && manifestDir === '.openzeppelin') {
72
+ throw new Error(`non-production target ${target} must not use .openzeppelin`);
73
+ }
74
+ assertManifestDirectory(resolvedRoot, manifestDir);
75
+ const configuredEnvironment = env.MANIFEST_DEFAULT_DIR?.trim();
76
+ if (configuredEnvironment && configuredEnvironment !== manifestDir) {
77
+ throw new Error(`MANIFEST_DEFAULT_DIR conflict for ${target}: expected ${manifestDir}, received ${configuredEnvironment}`);
78
+ }
79
+ const configuredTarget = env.GATE_WORKFLOW_TARGET?.trim();
80
+ if (configuredTarget && configuredTarget !== target) {
81
+ throw new Error(`GATE_WORKFLOW_TARGET conflict: expected ${target}, received ${configuredTarget}`);
82
+ }
83
+ return manifestDir;
84
+ };
85
+ exports.resolveTargetManifestDirectory = resolveTargetManifestDirectory;
86
+ const resolveTargetManifestPaths = (root, target, chainId, env = process.env) => {
87
+ if (!Number.isSafeInteger(chainId) || chainId <= 0) {
88
+ throw new Error(`invalid manifest chainId: ${chainId}`);
89
+ }
90
+ const resolvedRoot = node_path_1.default.resolve(root);
91
+ const manifestDir = (0, exports.resolveTargetManifestDirectory)(resolvedRoot, target, env);
92
+ const directory = node_path_1.default.join(resolvedRoot, manifestDir);
93
+ const fallbackName = `unknown-${chainId}.json`;
94
+ const canonicalName = `${upgrades_core_1.networkNames[chainId] ?? `unknown-${chainId}`}.json`;
95
+ return {
96
+ root: resolvedRoot,
97
+ target,
98
+ manifestDir,
99
+ file: node_path_1.default.join(directory, canonicalName),
100
+ fallbackFile: node_path_1.default.join(directory, fallbackName),
101
+ };
102
+ };
103
+ exports.resolveTargetManifestPaths = resolveTargetManifestPaths;
104
+ const readManifestBytes = (paths) => {
105
+ const canonicalExists = node_fs_1.default.existsSync(paths.file);
106
+ const distinctFallback = paths.file !== paths.fallbackFile;
107
+ const fallbackExists = distinctFallback && node_fs_1.default.existsSync(paths.fallbackFile);
108
+ if (canonicalExists && fallbackExists) {
109
+ throw new Error('OpenZeppelin canonical and fallback manifests are ambiguous');
110
+ }
111
+ const selected = canonicalExists ? paths.file : fallbackExists ? paths.fallbackFile : undefined;
112
+ if (!selected)
113
+ throw new Error(`OpenZeppelin manifest is missing for target ${paths.target}`);
114
+ regularFile(selected, 'OpenZeppelin manifest');
115
+ return node_fs_1.default.readFileSync(selected);
116
+ };
117
+ const parseTargetManifest = (bytes) => {
118
+ let raw;
119
+ try {
120
+ raw = JSON.parse(bytes.toString('utf8'));
121
+ }
122
+ catch (error) {
123
+ const message = error instanceof Error ? error.message : String(error);
124
+ throw new Error(`OpenZeppelin manifest is invalid JSON: ${message}`);
125
+ }
126
+ if (!raw || typeof raw !== 'object' || Array.isArray(raw)) {
127
+ throw new Error('OpenZeppelin manifest must be an object');
128
+ }
129
+ const value = raw;
130
+ if (value.manifestVersion !== '3.2') {
131
+ throw new Error('OpenZeppelin manifest version must be 3.2');
132
+ }
133
+ if (!value.impls || typeof value.impls !== 'object' || Array.isArray(value.impls)) {
134
+ throw new Error('OpenZeppelin manifest impls must be an object');
135
+ }
136
+ if (!Array.isArray(value.proxies)) {
137
+ throw new Error('OpenZeppelin manifest proxies must be an array');
138
+ }
139
+ return value;
140
+ };
141
+ exports.parseTargetManifest = parseTargetManifest;
142
+ const matchingImplementation = (manifest, implementation) => {
143
+ const expected = implementation.toLowerCase();
144
+ for (const entry of Object.values(manifest.impls)) {
145
+ if (!entry)
146
+ continue;
147
+ const addresses = [entry.address, ...(entry.allAddresses ?? [])];
148
+ if (addresses.some((address) => address.toLowerCase() === expected))
149
+ return entry.layout;
150
+ }
151
+ return undefined;
152
+ };
153
+ const readRegisteredZkUpgradeState = (input) => {
154
+ const paths = (0, exports.resolveTargetManifestPaths)(input.root, input.target, input.chainId, input.env);
155
+ const bytes = readManifestBytes(paths);
156
+ const manifest = (0, exports.parseTargetManifest)(bytes);
157
+ const proxyEntry = manifest.proxies.find((entry) => entry.address.toLowerCase() === input.proxy.toLowerCase());
158
+ if (!proxyEntry)
159
+ throw new Error(`proxy ${input.proxy} is not registered in the target manifest`);
160
+ if (proxyEntry.kind !== 'uups')
161
+ throw new Error(`proxy ${input.proxy} is not registered as UUPS`);
162
+ const oldLayout = matchingImplementation(manifest, input.currentImplementation);
163
+ if (!oldLayout) {
164
+ throw new Error(`current implementation ${input.currentImplementation} is not registered in the target manifest`);
165
+ }
166
+ return {
167
+ manifest,
168
+ paths,
169
+ bytes,
170
+ digest: node_crypto_1.default.createHash('sha256').update(bytes).digest('hex'),
171
+ oldLayout,
172
+ };
173
+ };
174
+ exports.readRegisteredZkUpgradeState = readRegisteredZkUpgradeState;
175
+ const hashStorageLayout = (layout) => node_crypto_1.default
176
+ .createHash('sha256')
177
+ .update((0, normalize_js_1.canonicalPreparationJson)(layout))
178
+ .digest('hex');
179
+ exports.hashStorageLayout = hashStorageLayout;
180
+ //# sourceMappingURL=manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/core/preparation/manifest.ts"],"names":[],"mappings":"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"}