starskiff 0.6.0 → 0.6.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 +29 -0
- package/dist/cosmos.d.ts +5 -0
- package/dist/cosmos.d.ts.map +1 -1
- package/dist/cosmos.js +18 -9
- package/dist/cosmos.js.map +1 -1
- package/dist/docker.d.ts +3 -0
- package/dist/docker.d.ts.map +1 -1
- package/dist/docker.js +10 -1
- package/dist/docker.js.map +1 -1
- package/dist/execution.d.ts +21 -0
- package/dist/execution.d.ts.map +1 -0
- package/dist/execution.js +13 -0
- package/dist/execution.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/instances/marood.d.ts +20 -0
- package/dist/instances/marood.d.ts.map +1 -1
- package/dist/instances/marood.js +52 -1
- package/dist/instances/marood.js.map +1 -1
- package/dist/process.d.ts +2 -0
- package/dist/process.d.ts.map +1 -1
- package/dist/process.js +2 -2
- package/dist/process.js.map +1 -1
- package/package.json +1 -1
- package/src/cosmos.ts +27 -8
- package/src/docker.ts +13 -1
- package/src/execution.ts +32 -0
- package/src/index.ts +1 -1
- package/src/instances/marood.ts +83 -0
- package/src/process.ts +4 -2
package/README.md
CHANGED
|
@@ -50,6 +50,35 @@ Any instance also accepts a `binary` (local executable) or `image` (custom tag)
|
|
|
50
50
|
|
|
51
51
|
See the [CI guide](./../docs/src/pages/docs/guides/ci.mdx) for provisioning binaries on GitHub Actions.
|
|
52
52
|
|
|
53
|
+
### maroo Privacy ZK artifacts
|
|
54
|
+
|
|
55
|
+
maroo v0.8+ validates external Privacy ZK artifacts during genesis and node
|
|
56
|
+
startup. Point `Instance.marood()` at an existing absolute host directory and
|
|
57
|
+
starskiff applies the matching read-only mount and environment to every
|
|
58
|
+
lifecycle command:
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
const maroo = Instance.marood({
|
|
62
|
+
image: 'maroo:local',
|
|
63
|
+
privacyZkArtifacts: {
|
|
64
|
+
kind: 'generated-test',
|
|
65
|
+
directory: '/absolute/path/to/privacy-zk-test-artifacts',
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Use `kind: 'release'` with an approved release bundle. That mode forces
|
|
71
|
+
production/strict preflight and removes the test-only circuit identity opt-in.
|
|
72
|
+
Generated artifacts require a marood binary or image built with the `test`
|
|
73
|
+
build tag. The option also works with `binary: 'marood'`; starskiff passes the
|
|
74
|
+
host path directly instead of mounting it.
|
|
75
|
+
|
|
76
|
+
Starskiff checks only that the path is absolute and names an existing
|
|
77
|
+
directory. It does not generate, download, or approve artifacts, and leaves
|
|
78
|
+
manifest, checksum, VK, and circuit-identity validation to marood. Omit the
|
|
79
|
+
option when using a self-contained image that already carries and configures
|
|
80
|
+
its artifacts.
|
|
81
|
+
|
|
53
82
|
## Usage
|
|
54
83
|
|
|
55
84
|
### Basic (simd)
|
package/dist/cosmos.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as Instance from './Instance.js';
|
|
2
|
+
import { executionDependency, type ExecutionDependency } from './execution.js';
|
|
2
3
|
export type CosmosAccount = {
|
|
3
4
|
/** BIP39 mnemonic for key derivation. */
|
|
4
5
|
mnemonic: string;
|
|
@@ -190,6 +191,8 @@ export type CosmosBaseParameters = CosmosChainParameters & {
|
|
|
190
191
|
* JSON-RPC (EVM) endpoint to come up.
|
|
191
192
|
*/
|
|
192
193
|
extraReadinessCheck?: () => Promise<boolean>;
|
|
194
|
+
/** @internal Chain wrappers translate domain options into this dependency. */
|
|
195
|
+
[executionDependency]?: ExecutionDependency;
|
|
193
196
|
};
|
|
194
197
|
/**
|
|
195
198
|
* Shared setup for any Cosmos SDK chain binary.
|
|
@@ -270,6 +273,8 @@ export type CosmosEvmBaseParameters = CosmosEvmChainParameters & {
|
|
|
270
273
|
extraConfigToml?: Record<string, string>;
|
|
271
274
|
/** Extra `start` command args, forwarded to cosmosBase. */
|
|
272
275
|
extraStartArgs?: string[];
|
|
276
|
+
/** @internal Chain wrappers translate domain options into this dependency. */
|
|
277
|
+
[executionDependency]?: ExecutionDependency;
|
|
273
278
|
};
|
|
274
279
|
/**
|
|
275
280
|
* Normalizes an `active_static_precompiles` list to the form cosmos-evm
|
package/dist/cosmos.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
|
package/dist/cosmos.js
CHANGED
|
@@ -7,6 +7,7 @@ import * as Instance from './Instance.js';
|
|
|
7
7
|
import { createProcess } from './process.js';
|
|
8
8
|
import { sortCoins, toChecksumAddress } from './utils.js';
|
|
9
9
|
import { assertDockerAvailable, CONTAINER_HOME, ensureImage, removeContainer, runArgs as dockerRunArgs, startArgs as dockerStartArgs, } from './docker.js';
|
|
10
|
+
import { applyExecutionEnvironment, executionDependency, } from './execution.js';
|
|
10
11
|
/** Default pk proto URL for ethermint-derivation chains (cosmos-evm module). */
|
|
11
12
|
export const DEFAULT_COSMOS_EVM_PK_TYPE_URL = '/cosmos.evm.crypto.v1.ethsecp256k1.PubKey';
|
|
12
13
|
/**
|
|
@@ -19,7 +20,7 @@ export const DEFAULT_COSMOS_EVM_PK_TYPE_URL = '/cosmos.evm.crypto.v1.ethsecp256k
|
|
|
19
20
|
* For custom chains, provide a `patchGenesis` hook for chain-specific genesis modifications.
|
|
20
21
|
*/
|
|
21
22
|
export function cosmosBase(parameters) {
|
|
22
|
-
const { binary, name, chainId = 'starskiff-1', denom = 'stake', prefix = 'cosmos', accounts = [], minimumGasPrices, validatorBalance = '100000000000', validatorStake = '10000000', extraValidators = 0, rpcPort = 26657, grpcPort = 9090, apiPort = 1317, p2pPort = 26656, grpcWebPort = 9091, pprofPort = 6060, patchGenesis, finalizeGenesis, extraAppToml, extraConfigToml, extraStartArgs, extraPorts, extraReadinessCheck, relayerHints, image, } = parameters;
|
|
23
|
+
const { binary, name, chainId = 'starskiff-1', denom = 'stake', prefix = 'cosmos', accounts = [], minimumGasPrices, validatorBalance = '100000000000', validatorStake = '10000000', extraValidators = 0, rpcPort = 26657, grpcPort = 9090, apiPort = 1317, p2pPort = 26656, grpcWebPort = 9091, pprofPort = 6060, patchGenesis, finalizeGenesis, extraAppToml, extraConfigToml, extraStartArgs, extraPorts, extraReadinessCheck, relayerHints, image, [executionDependency]: dependency, } = parameters;
|
|
23
24
|
const process = createProcess(name);
|
|
24
25
|
const host = 'localhost';
|
|
25
26
|
let homeDir;
|
|
@@ -71,18 +72,24 @@ export function cosmosBase(parameters) {
|
|
|
71
72
|
await assertDockerAvailable(image);
|
|
72
73
|
await ensureImage(image, (message) => emitter.emit('message', message));
|
|
73
74
|
}
|
|
75
|
+
const childEnvironment = applyExecutionEnvironment(globalThis.process.env, dependency);
|
|
76
|
+
const dockerOptions = (commandHome) => ({
|
|
77
|
+
image: image,
|
|
78
|
+
homeDir: commandHome,
|
|
79
|
+
executionDependency: dependency,
|
|
80
|
+
});
|
|
74
81
|
// Both runtimes execute the same chain CLI against the same home dir —
|
|
75
82
|
// docker just runs it inside a disposable container with that dir bind
|
|
76
83
|
// mounted, so every step below (and the host-side genesis/config
|
|
77
84
|
// patching) is runtime-agnostic.
|
|
78
85
|
const run = (args) => image
|
|
79
|
-
? x('docker', dockerRunArgs(
|
|
86
|
+
? x('docker', dockerRunArgs(dockerOptions(homeDir), binary, args), {
|
|
80
87
|
throwOnError: true,
|
|
81
|
-
nodeOptions: { stdio: 'pipe' },
|
|
88
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
82
89
|
})
|
|
83
90
|
: x(binary, [...args, '--home', homeDir], {
|
|
84
91
|
throwOnError: true,
|
|
85
|
-
nodeOptions: { stdio: 'pipe' },
|
|
92
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
86
93
|
});
|
|
87
94
|
// 1. Init chain
|
|
88
95
|
await run(['init', 'validator', '--chain-id', chainId]);
|
|
@@ -107,11 +114,12 @@ export function cosmosBase(parameters) {
|
|
|
107
114
|
// (docker gets `-i` to keep the pipe open into the container).
|
|
108
115
|
const recoverArgs = ['keys', 'add', keyName, '--recover', '--keyring-backend', 'test'];
|
|
109
116
|
const [recoverCmd, recoverArgv] = image
|
|
110
|
-
? ['docker', dockerRunArgs(
|
|
117
|
+
? ['docker', dockerRunArgs(dockerOptions(homeDir), binary, recoverArgs, { interactive: true })]
|
|
111
118
|
: [binary, [...recoverArgs, '--home', homeDir]];
|
|
112
119
|
const result = spawnSync(recoverCmd, recoverArgv, {
|
|
113
120
|
input: account.mnemonic + '\n',
|
|
114
121
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
122
|
+
env: childEnvironment,
|
|
115
123
|
});
|
|
116
124
|
if (result.status !== 0) {
|
|
117
125
|
throw new Error(`Failed to recover key "${keyName}": ${result.stderr?.toString()}`);
|
|
@@ -141,13 +149,13 @@ export function cosmosBase(parameters) {
|
|
|
141
149
|
// The throwaway home is a *different* directory, so under docker it
|
|
142
150
|
// needs its own bind mount rather than the instance's.
|
|
143
151
|
const runInConsHome = (args) => image
|
|
144
|
-
? x('docker', dockerRunArgs(
|
|
152
|
+
? x('docker', dockerRunArgs(dockerOptions(consHome), binary, args), {
|
|
145
153
|
throwOnError: true,
|
|
146
|
-
nodeOptions: { stdio: 'pipe' },
|
|
154
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
147
155
|
})
|
|
148
156
|
: x(binary, [...args, '--home', consHome], {
|
|
149
157
|
throwOnError: true,
|
|
150
|
-
nodeOptions: { stdio: 'pipe' },
|
|
158
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
151
159
|
});
|
|
152
160
|
try {
|
|
153
161
|
await runInConsHome(['init', valName, '--chain-id', chainId]);
|
|
@@ -208,7 +216,7 @@ export function cosmosBase(parameters) {
|
|
|
208
216
|
const [startCmd, startArgv] = image
|
|
209
217
|
? [
|
|
210
218
|
'docker',
|
|
211
|
-
dockerStartArgs(
|
|
219
|
+
dockerStartArgs(dockerOptions(homeDir), binary, startCliArgs, {
|
|
212
220
|
name: containerName,
|
|
213
221
|
ports: [port, p2pPort, apiPort, grpcPort, grpcWebPort, ...(extraPorts ?? [])],
|
|
214
222
|
}),
|
|
@@ -216,6 +224,7 @@ export function cosmosBase(parameters) {
|
|
|
216
224
|
: [binary, ['start', '--home', homeDir, ...(extraStartArgs ?? [])]];
|
|
217
225
|
return await process.start(startCmd, startArgv, {
|
|
218
226
|
emitter,
|
|
227
|
+
environment: childEnvironment,
|
|
219
228
|
resolver({ process: proc, resolve, reject }) {
|
|
220
229
|
const rpcUrl = `http://localhost:${port}`;
|
|
221
230
|
// Tail recent output so an exit-during-startup rejection carries
|
package/dist/cosmos.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../src/cosmos.ts"],"names":[],"mappings":"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"}
|
package/dist/docker.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ExecutionDependency } from './execution.js';
|
|
1
2
|
/**
|
|
2
3
|
* Home directory *inside* the container. The host's temp home dir is bind
|
|
3
4
|
* mounted here, so genesis/config patching stays plain host-side file I/O —
|
|
@@ -30,6 +31,8 @@ export type DockerOptions = {
|
|
|
30
31
|
image: string;
|
|
31
32
|
/** Host directory bind mounted at {@link CONTAINER_HOME}. */
|
|
32
33
|
homeDir: string;
|
|
34
|
+
/** Internal files and environment shared by every chain CLI invocation. */
|
|
35
|
+
executionDependency?: ExecutionDependency;
|
|
33
36
|
};
|
|
34
37
|
/**
|
|
35
38
|
* Builds `docker run` args for a one-shot chain command (init, keys, gentx, …).
|
package/dist/docker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD;;;;GAIG;AACH,eAAO,MAAM,cAAc,WAAW,CAAA;AAEtC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3C,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,GAAG,SAAS,CA8BpB;AAED,kDAAkD;AAClD,MAAM,MAAM,aAAa,GAAG;IAC1B,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAA;IACb,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAA;IACf,2EAA2E;IAC3E,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;CAC1C,CAAA;AA2CD;;;;;GAKG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/B,MAAM,EAAE,CAcV;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CACvB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,GACtC,MAAM,EAAE,CAYV;AAED,+EAA+E;AAC/E,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYxE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrG;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMjE"}
|
package/dist/docker.js
CHANGED
|
@@ -61,7 +61,7 @@ function userArgs() {
|
|
|
61
61
|
return [];
|
|
62
62
|
return ['--user', `${process.getuid?.()}:${process.getgid?.()}`];
|
|
63
63
|
}
|
|
64
|
-
function mountArgs({ homeDir }) {
|
|
64
|
+
function mountArgs({ homeDir, executionDependency }) {
|
|
65
65
|
// -w pins the working dir to the mounted home. Some chain binaries (e.g. evmd)
|
|
66
66
|
// instantiate the app at command-construction time and create a `data/` dir
|
|
67
67
|
// relative to CWD *before* reading --home; if CWD is the image's default
|
|
@@ -74,8 +74,17 @@ function mountArgs({ homeDir }) {
|
|
|
74
74
|
// guaranteed-writable, and they're deleted with the home dir on stop().
|
|
75
75
|
return [
|
|
76
76
|
'-v', `${homeDir}:${CONTAINER_HOME}`,
|
|
77
|
+
...(executionDependency?.mounts ?? []).flatMap(({ source, target, readOnly }) => [
|
|
78
|
+
'-v', `${source}:${target}${readOnly ? ':ro' : ''}`,
|
|
79
|
+
]),
|
|
77
80
|
'-e', `HOME=${CONTAINER_HOME}`,
|
|
78
81
|
'-e', `TMPDIR=${CONTAINER_HOME}`,
|
|
82
|
+
...Object.entries(executionDependency?.environment ?? {}).flatMap(([name, value]) => [
|
|
83
|
+
'-e', `${name}=${value}`,
|
|
84
|
+
]),
|
|
85
|
+
// Docker cannot remove an ENV baked into an image, but overriding it with
|
|
86
|
+
// an empty value has the same os.Getenv semantics for chain binaries.
|
|
87
|
+
...(executionDependency?.unsetEnvironment ?? []).flatMap((name) => ['-e', `${name}=`]),
|
|
79
88
|
'-w', CONTAINER_HOME,
|
|
80
89
|
];
|
|
81
90
|
}
|
package/dist/docker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../src/docker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Files and environment required by every invocation of a chain binary.
|
|
3
|
+
*
|
|
4
|
+
* This is an internal seam between cosmosBase and its Docker/local-process
|
|
5
|
+
* adapters. Chain instance interfaces should expose domain-specific options
|
|
6
|
+
* and translate them into this shape themselves.
|
|
7
|
+
*/
|
|
8
|
+
export type ExecutionDependency = {
|
|
9
|
+
environment: Record<string, string>;
|
|
10
|
+
unsetEnvironment?: readonly string[];
|
|
11
|
+
mounts?: readonly {
|
|
12
|
+
source: string;
|
|
13
|
+
target: string;
|
|
14
|
+
readOnly: true;
|
|
15
|
+
}[];
|
|
16
|
+
};
|
|
17
|
+
/** Symbol-keyed so generic execution settings do not become public chain options. */
|
|
18
|
+
export declare const executionDependency: unique symbol;
|
|
19
|
+
/** Builds an isolated child environment without mutating the parent process. */
|
|
20
|
+
export declare function applyExecutionEnvironment(parent: NodeJS.ProcessEnv, dependency?: ExecutionDependency): NodeJS.ProcessEnv;
|
|
21
|
+
//# sourceMappingURL=execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACpC,MAAM,CAAC,EAAE,SAAS;QAChB,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,IAAI,CAAA;KACf,EAAE,CAAA;CACJ,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,eAA0C,CAAA;AAE1E,gFAAgF;AAChF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,UAAU,CAAC,EAAE,mBAAmB,GAC/B,MAAM,CAAC,UAAU,CAOnB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Symbol-keyed so generic execution settings do not become public chain options. */
|
|
2
|
+
export const executionDependency = Symbol('starskiff.executionDependency');
|
|
3
|
+
/** Builds an isolated child environment without mutating the parent process. */
|
|
4
|
+
export function applyExecutionEnvironment(parent, dependency) {
|
|
5
|
+
if (!dependency)
|
|
6
|
+
return parent;
|
|
7
|
+
const environment = { ...parent };
|
|
8
|
+
for (const name of dependency.unsetEnvironment ?? [])
|
|
9
|
+
delete environment[name];
|
|
10
|
+
Object.assign(environment, dependency.environment);
|
|
11
|
+
return environment;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"AAiBA,qFAAqF;AACrF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAA;AAE1E,gFAAgF;AAChF,MAAM,UAAU,yBAAyB,CACvC,MAAyB,EACzB,UAAgC;IAEhC,IAAI,CAAC,UAAU;QAAE,OAAO,MAAM,CAAA;IAE9B,MAAM,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;IACjC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,gBAAgB,IAAI,EAAE;QAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9E,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;IAClD,OAAO,WAAW,CAAA;AACpB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export { XPLA_DEFAULT_PRECOMPILES, XPLA_DEFAULT_IMAGE, type XpladParameters } fr
|
|
|
7
7
|
export { XRPLEVM_DEFAULT_PRECOMPILES, XRPLEVM_DEFAULT_IMAGE, type XrplevmParameters } from './instances/xrplevm.js';
|
|
8
8
|
export { MANTRA_DEFAULT_PRECOMPILES, MANTRA_DEFAULT_IMAGE, type MantraParameters } from './instances/mantra.js';
|
|
9
9
|
export { EVMD_DEFAULT_PRECOMPILES, EVMD_DEFAULT_IMAGE, type EvmdParameters } from './instances/evmd.js';
|
|
10
|
-
export { MAROO_NETWORKS, MAROO_DEFAULT_PRECOMPILES, MAROO_PREINSTALLS, MAROO_NATIVE_ERC20, MAROO_DEFAULT_PCL_ENTRYPOINTS, patchMaroodGenesis, type MaroodParameters, type MaroodNetwork, type MaroodNetworkPreset, type EvmPreinstall, type PatchMaroodGenesisOptions } from './instances/marood.js';
|
|
10
|
+
export { MAROO_NETWORKS, MAROO_DEFAULT_PRECOMPILES, MAROO_PREINSTALLS, MAROO_NATIVE_ERC20, MAROO_DEFAULT_PCL_ENTRYPOINTS, patchMaroodGenesis, type MaroodParameters, type MaroodPrivacyZkArtifacts, type MaroodNetwork, type MaroodNetworkPreset, type EvmPreinstall, type PatchMaroodGenesisOptions } from './instances/marood.js';
|
|
11
11
|
export type { EventTypes } from './process.js';
|
|
12
12
|
export { findFreePorts, type PortSet } from './ports.js';
|
|
13
13
|
export { testAccounts, type TestAccount } from './accounts.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,8BAA8B,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACnT,OAAO,EAAE,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AACnH,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,8BAA8B,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACnT,OAAO,EAAE,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AACnH,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,wBAAwB,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AACnU,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,8BAA8B,EAA8N,MAAM,aAAa,CAAA;AACnT,OAAO,EAAE,kBAAkB,EAAuB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAwB,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAwB,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAA0B,MAAM,wBAAwB,CAAA;AACnH,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAyB,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAuB,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,8BAA8B,EAA8N,MAAM,aAAa,CAAA;AACnT,OAAO,EAAE,kBAAkB,EAAuB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAwB,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAwB,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAA0B,MAAM,wBAAwB,CAAA;AACnH,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAyB,MAAM,uBAAuB,CAAA;AAC/G,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAuB,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,kBAAkB,EAA0J,MAAM,uBAAuB,CAAA;AAEnU,OAAO,EAAE,aAAa,EAAgB,MAAM,YAAY,CAAA;AACxD,OAAO,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as Instance from '../Instance.js';
|
|
2
2
|
import { type CosmosEvmChainParameters, type Genesis } from '../cosmos.js';
|
|
3
|
+
import { type ExecutionDependency } from '../execution.js';
|
|
3
4
|
import { MAROO_PREINSTALLS, type EvmPreinstall } from './marood-preinstalls.js';
|
|
4
5
|
export type { EvmPreinstall };
|
|
5
6
|
export { MAROO_PREINSTALLS };
|
|
@@ -48,6 +49,15 @@ export declare const MAROO_DEFAULT_PRECOMPILES: readonly string[];
|
|
|
48
49
|
* {@link MAROO_PREINSTALLS} already seeds at genesis.
|
|
49
50
|
*/
|
|
50
51
|
export declare const MAROO_DEFAULT_PCL_ENTRYPOINTS: readonly string[];
|
|
52
|
+
export type MaroodPrivacyZkArtifacts = {
|
|
53
|
+
kind: 'generated-test';
|
|
54
|
+
/** Absolute host path containing generated, non-production test artifacts. */
|
|
55
|
+
directory: string;
|
|
56
|
+
} | {
|
|
57
|
+
kind: 'release';
|
|
58
|
+
/** Absolute host path containing an approved release artifact bundle. */
|
|
59
|
+
directory: string;
|
|
60
|
+
};
|
|
51
61
|
export type MaroodParameters = CosmosEvmChainParameters & {
|
|
52
62
|
/**
|
|
53
63
|
* Run from a local `marood` binary on `PATH`.
|
|
@@ -57,6 +67,14 @@ export type MaroodParameters = CosmosEvmChainParameters & {
|
|
|
57
67
|
* assumed to be named `marood`.)
|
|
58
68
|
*/
|
|
59
69
|
binary?: string;
|
|
70
|
+
/**
|
|
71
|
+
* External Privacy ZK artifacts required by maroo v0.8+.
|
|
72
|
+
*
|
|
73
|
+
* Omit this for a self-contained image whose artifacts and environment are
|
|
74
|
+
* already configured. Starskiff validates only the host path; marood's
|
|
75
|
+
* strict preflight remains the authority for artifact contents.
|
|
76
|
+
*/
|
|
77
|
+
privacyZkArtifacts?: MaroodPrivacyZkArtifacts;
|
|
60
78
|
/**
|
|
61
79
|
* Network preset selecting chain ids and denoms. @default "testnet"
|
|
62
80
|
*
|
|
@@ -88,6 +106,8 @@ export type MaroodParameters = CosmosEvmChainParameters & {
|
|
|
88
106
|
/** Chain-specific genesis patch, chained after marood's defaults. */
|
|
89
107
|
patchGenesis?: (genesis: Genesis) => Genesis;
|
|
90
108
|
};
|
|
109
|
+
/** @internal Translates the marood-specific option into the generic execution seam. */
|
|
110
|
+
export declare function resolveMaroodPrivacyZkArtifacts(artifacts: MaroodPrivacyZkArtifacts | undefined, containerRuntime: boolean): ExecutionDependency | undefined;
|
|
91
111
|
/** Options for {@link patchMaroodGenesis}, mirroring the relevant `MaroodParameters`. */
|
|
92
112
|
export type PatchMaroodGenesisOptions = {
|
|
93
113
|
preset: MaroodNetworkPreset;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marood.d.ts","sourceRoot":"","sources":["../../src/instances/marood.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"marood.d.ts","sourceRoot":"","sources":["../../src/instances/marood.ts"],"names":[],"mappings":"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"}
|
package/dist/instances/marood.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
1
3
|
import * as Instance from '../Instance.js';
|
|
2
4
|
import { cosmosEvmBase } from '../cosmos.js';
|
|
3
5
|
import { resolveInstanceImage } from '../docker.js';
|
|
6
|
+
import { executionDependency } from '../execution.js';
|
|
4
7
|
import { MAROO_PREINSTALLS } from './marood-preinstalls.js';
|
|
5
8
|
export { MAROO_PREINSTALLS };
|
|
6
9
|
/**
|
|
@@ -76,6 +79,52 @@ const MAROO_EAS_INDEXER_CONTRACT = 'maroo1zqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqg6dp7qp
|
|
|
76
79
|
export const MAROO_DEFAULT_PCL_ENTRYPOINTS = [
|
|
77
80
|
'maroo1gvmssnv7y40lqupyv88c39wwnca4luggmf5lq0',
|
|
78
81
|
];
|
|
82
|
+
const PRIVACY_ZK_CONTAINER_DIRECTORY = '/starskiff/privacy-zk-artifacts';
|
|
83
|
+
const PRIVACY_ZK_ARTIFACT_DIR_ENV = 'CLAIRVEIL_PRIVACY_ZK_ARTIFACT_DIR';
|
|
84
|
+
const PRIVACY_ZK_PREFLIGHT_MODE_ENV = 'CLAIRVEIL_PRIVACY_ZK_PREFLIGHT_MODE';
|
|
85
|
+
const PRIVACY_ZK_RUNTIME_ENVIRONMENT_ENV = 'CLAIRVEIL_PRIVACY_ZK_RUNTIME_ENVIRONMENT';
|
|
86
|
+
const TEST_PRIVACY_RELEASE_ENV = 'MAROO_TEST_PRIVACY_RELEASE_FROM_ARTIFACTS';
|
|
87
|
+
/** @internal Translates the marood-specific option into the generic execution seam. */
|
|
88
|
+
export function resolveMaroodPrivacyZkArtifacts(artifacts, containerRuntime) {
|
|
89
|
+
if (!artifacts)
|
|
90
|
+
return undefined;
|
|
91
|
+
if (artifacts.kind !== 'generated-test' && artifacts.kind !== 'release') {
|
|
92
|
+
throw new Error('marood: privacyZkArtifacts.kind must be "generated-test" or "release".');
|
|
93
|
+
}
|
|
94
|
+
if (typeof artifacts.directory !== 'string' || !path.isAbsolute(artifacts.directory)) {
|
|
95
|
+
throw new Error('marood: privacyZkArtifacts.directory must be an absolute host path.');
|
|
96
|
+
}
|
|
97
|
+
let isDirectory = false;
|
|
98
|
+
try {
|
|
99
|
+
isDirectory = fs.statSync(artifacts.directory).isDirectory();
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
// Use the same actionable error for missing and unreadable paths.
|
|
103
|
+
}
|
|
104
|
+
if (!isDirectory) {
|
|
105
|
+
throw new Error(`marood: privacyZkArtifacts.directory is not an existing directory: ${artifacts.directory}`);
|
|
106
|
+
}
|
|
107
|
+
const artifactDirectory = containerRuntime
|
|
108
|
+
? PRIVACY_ZK_CONTAINER_DIRECTORY
|
|
109
|
+
: artifacts.directory;
|
|
110
|
+
const environment = {
|
|
111
|
+
[PRIVACY_ZK_ARTIFACT_DIR_ENV]: artifactDirectory,
|
|
112
|
+
[PRIVACY_ZK_PREFLIGHT_MODE_ENV]: 'strict',
|
|
113
|
+
};
|
|
114
|
+
if (artifacts.kind === 'generated-test') {
|
|
115
|
+
environment[TEST_PRIVACY_RELEASE_ENV] = '1';
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
environment[PRIVACY_ZK_RUNTIME_ENVIRONMENT_ENV] = 'production';
|
|
119
|
+
}
|
|
120
|
+
return {
|
|
121
|
+
environment,
|
|
122
|
+
unsetEnvironment: artifacts.kind === 'release' ? [TEST_PRIVACY_RELEASE_ENV] : undefined,
|
|
123
|
+
mounts: containerRuntime
|
|
124
|
+
? [{ source: artifacts.directory, target: PRIVACY_ZK_CONTAINER_DIRECTORY, readOnly: true }]
|
|
125
|
+
: undefined,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
79
128
|
/**
|
|
80
129
|
* marood's genesis patch, extracted for unit testing. Mutates `genesis` in
|
|
81
130
|
* place and returns it, like every other patch hook here.
|
|
@@ -205,9 +254,10 @@ export const marood = Instance.define((parameters) => {
|
|
|
205
254
|
// 18-decimal chain: power reduction is 1e18, so stake amounts mirror evmd.
|
|
206
255
|
validatorBalance = '100000000000000000000000', // 1e23
|
|
207
256
|
validatorStake = '10000000000000000000000', // 1e22
|
|
208
|
-
minimumGasPrices = `0${preset.feeDenom}`, preinstalls = MAROO_PREINSTALLS, policyAdmin, minterAddress, entrypoints, patchGenesis: userPatch, ...rest } = params;
|
|
257
|
+
minimumGasPrices = `0${preset.feeDenom}`, preinstalls = MAROO_PREINSTALLS, policyAdmin, minterAddress, entrypoints, privacyZkArtifacts, patchGenesis: userPatch, ...rest } = params;
|
|
209
258
|
// No default image (private node source): image or binary required.
|
|
210
259
|
const image = resolveInstanceImage('marood', params);
|
|
260
|
+
const privacyZkDependency = resolveMaroodPrivacyZkArtifacts(privacyZkArtifacts, Boolean(image));
|
|
211
261
|
// Same three-state semantics as evmd: omitted → maroo default set; explicit
|
|
212
262
|
// `undefined` → binary default (empty); `[]` / `[...]` → as given.
|
|
213
263
|
const activeStaticPrecompiles = 'activeStaticPrecompiles' in params ? params.activeStaticPrecompiles : MAROO_DEFAULT_PRECOMPILES;
|
|
@@ -219,6 +269,7 @@ export const marood = Instance.define((parameters) => {
|
|
|
219
269
|
// app.toml's compiled-in default is the mainnet EVM chain id; make the
|
|
220
270
|
// preset authoritative for both networks.
|
|
221
271
|
extraStartArgs: ['--evm.evm-chain-id', String(preset.evmChainId)],
|
|
272
|
+
[executionDependency]: privacyZkDependency,
|
|
222
273
|
patchGenesis: (genesis) => patchMaroodGenesis(genesis, { preset, preinstalls, policyAdmin, minterAddress, entrypoints, patchGenesis: userPatch }),
|
|
223
274
|
});
|
|
224
275
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marood.js","sourceRoot":"","sources":["../../src/instances/marood.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAA+C,MAAM,cAAc,CAAA;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAsB,MAAM,yBAAyB,CAAA;AAG/E,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAuB5B;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAA+C;IACxE,OAAO,EAAE;QACP,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,aAAa;QACtB,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,OAAO;QACjB,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,YAAY;KAC3B;IACD,OAAO,EAAE;QACP,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,gBAAgB;QACzB,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,OAAO;QACrB,MAAM,EAAE,OAAO;QACf,YAAY,EAAE,cAAc;KAC7B;CACF,CAAA;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,kBAAkB,GAAG,4CAA4C,CAAA;AAE9E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsB;IAC1D,4CAA4C,EAAE,OAAO;IACrD,4CAA4C,EAAE,SAAS;IACvD,4CAA4C,EAAE,UAAU;IACxD,4CAA4C,EAAE,eAAe;IAC7D,4CAA4C,EAAE,QAAQ;IACtD,4CAA4C,EAAE,OAAO;IACrD,4CAA4C,EAAE,MAAM;IACpD,4CAA4C,EAAE,WAAW;IACzD,4CAA4C,EAAE,QAAQ;IACtD,4CAA4C,EAAE,OAAO;IACrD,4CAA4C,EAAE,MAAM;IACpD,4CAA4C,EAAE,MAAM;IACpD,4CAA4C,EAAE,QAAQ;CACvD,CAAA;AAED;;;;;;GAMG;AACH,MAAM,6BAA6B,GAAG,8CAA8C,CAAA;AACpF,MAAM,+BAA+B,GAAG,8CAA8C,CAAA;AACtF,MAAM,kCAAkC,GAAG,8CAA8C,CAAA;AACzF,MAAM,kBAAkB,GAAG,8CAA8C,CAAA;AACzE,MAAM,0BAA0B,GAAG,8CAA8C,CAAA;AAEjF;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAsB;IAC9D,8CAA8C;CAC/C,CAAA;
|
|
1
|
+
{"version":3,"file":"marood.js","sourceRoot":"","sources":["../../src/instances/marood.ts"],"names":[],"mappings":"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"}
|
package/dist/process.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export type ProcessResolverOptions = {
|
|
|
14
14
|
};
|
|
15
15
|
export type ProcessStartOptions = {
|
|
16
16
|
emitter: Emitter<EventTypes>;
|
|
17
|
+
/** Environment for the managed child process. */
|
|
18
|
+
environment?: NodeJS.ProcessEnv;
|
|
17
19
|
resolver(options: ProcessResolverOptions): void;
|
|
18
20
|
};
|
|
19
21
|
export type Process = {
|
package/dist/process.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAKpC,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC;IACjC,OAAO,IAAI,IAAI,CAAC;IAChB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AA8BF;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAmEjF"}
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAKpC,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC;IACjC,OAAO,IAAI,IAAI,CAAC;IAChB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AA8BF;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAmEjF"}
|
package/dist/process.js
CHANGED
|
@@ -35,10 +35,10 @@ export function createProcess(name, options = {}) {
|
|
|
35
35
|
let child;
|
|
36
36
|
const errorMessages = [];
|
|
37
37
|
return {
|
|
38
|
-
start(command, args, { emitter, resolver }) {
|
|
38
|
+
start(command, args, { emitter, environment, resolver }) {
|
|
39
39
|
const { promise, resolve, reject } = Promise.withResolvers();
|
|
40
40
|
child = exec(command, args, {
|
|
41
|
-
nodeOptions: { stdio: 'pipe' },
|
|
41
|
+
nodeOptions: { stdio: 'pipe', env: environment },
|
|
42
42
|
});
|
|
43
43
|
const proc = child.process;
|
|
44
44
|
async function kill() {
|
package/dist/process.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIhC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/cosmos.ts
CHANGED
|
@@ -14,6 +14,11 @@ import {
|
|
|
14
14
|
runArgs as dockerRunArgs,
|
|
15
15
|
startArgs as dockerStartArgs,
|
|
16
16
|
} from './docker.js'
|
|
17
|
+
import {
|
|
18
|
+
applyExecutionEnvironment,
|
|
19
|
+
executionDependency,
|
|
20
|
+
type ExecutionDependency,
|
|
21
|
+
} from './execution.js'
|
|
17
22
|
|
|
18
23
|
export type CosmosAccount = {
|
|
19
24
|
/** BIP39 mnemonic for key derivation. */
|
|
@@ -185,6 +190,8 @@ export type CosmosBaseParameters = CosmosChainParameters & {
|
|
|
185
190
|
* JSON-RPC (EVM) endpoint to come up.
|
|
186
191
|
*/
|
|
187
192
|
extraReadinessCheck?: () => Promise<boolean>
|
|
193
|
+
/** @internal Chain wrappers translate domain options into this dependency. */
|
|
194
|
+
[executionDependency]?: ExecutionDependency
|
|
188
195
|
}
|
|
189
196
|
|
|
190
197
|
/**
|
|
@@ -223,6 +230,7 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
223
230
|
extraReadinessCheck,
|
|
224
231
|
relayerHints,
|
|
225
232
|
image,
|
|
233
|
+
[executionDependency]: dependency,
|
|
226
234
|
} = parameters
|
|
227
235
|
|
|
228
236
|
const process = createProcess(name)
|
|
@@ -283,19 +291,26 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
283
291
|
await ensureImage(image, (message) => emitter.emit('message', message))
|
|
284
292
|
}
|
|
285
293
|
|
|
294
|
+
const childEnvironment = applyExecutionEnvironment(globalThis.process.env, dependency)
|
|
295
|
+
const dockerOptions = (commandHome: string) => ({
|
|
296
|
+
image: image!,
|
|
297
|
+
homeDir: commandHome,
|
|
298
|
+
executionDependency: dependency,
|
|
299
|
+
})
|
|
300
|
+
|
|
286
301
|
// Both runtimes execute the same chain CLI against the same home dir —
|
|
287
302
|
// docker just runs it inside a disposable container with that dir bind
|
|
288
303
|
// mounted, so every step below (and the host-side genesis/config
|
|
289
304
|
// patching) is runtime-agnostic.
|
|
290
305
|
const run = (args: string[]) =>
|
|
291
306
|
image
|
|
292
|
-
? x('docker', dockerRunArgs(
|
|
307
|
+
? x('docker', dockerRunArgs(dockerOptions(homeDir!), binary, args), {
|
|
293
308
|
throwOnError: true,
|
|
294
|
-
nodeOptions: { stdio: 'pipe' },
|
|
309
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
295
310
|
})
|
|
296
311
|
: x(binary, [...args, '--home', homeDir!], {
|
|
297
312
|
throwOnError: true,
|
|
298
|
-
nodeOptions: { stdio: 'pipe' },
|
|
313
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
299
314
|
})
|
|
300
315
|
|
|
301
316
|
// 1. Init chain
|
|
@@ -326,12 +341,13 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
326
341
|
// (docker gets `-i` to keep the pipe open into the container).
|
|
327
342
|
const recoverArgs = ['keys', 'add', keyName, '--recover', '--keyring-backend', 'test']
|
|
328
343
|
const [recoverCmd, recoverArgv] = image
|
|
329
|
-
? ['docker', dockerRunArgs(
|
|
344
|
+
? ['docker', dockerRunArgs(dockerOptions(homeDir!), binary, recoverArgs, { interactive: true })] as const
|
|
330
345
|
: [binary, [...recoverArgs, '--home', homeDir!]] as const
|
|
331
346
|
|
|
332
347
|
const result = spawnSync(recoverCmd, recoverArgv as string[], {
|
|
333
348
|
input: account.mnemonic + '\n',
|
|
334
349
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
350
|
+
env: childEnvironment,
|
|
335
351
|
})
|
|
336
352
|
|
|
337
353
|
if (result.status !== 0) {
|
|
@@ -367,13 +383,13 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
367
383
|
// needs its own bind mount rather than the instance's.
|
|
368
384
|
const runInConsHome = (args: string[]) =>
|
|
369
385
|
image
|
|
370
|
-
? x('docker', dockerRunArgs(
|
|
386
|
+
? x('docker', dockerRunArgs(dockerOptions(consHome), binary, args), {
|
|
371
387
|
throwOnError: true,
|
|
372
|
-
nodeOptions: { stdio: 'pipe' },
|
|
388
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
373
389
|
})
|
|
374
390
|
: x(binary, [...args, '--home', consHome], {
|
|
375
391
|
throwOnError: true,
|
|
376
|
-
nodeOptions: { stdio: 'pipe' },
|
|
392
|
+
nodeOptions: { stdio: 'pipe', env: childEnvironment },
|
|
377
393
|
})
|
|
378
394
|
try {
|
|
379
395
|
await runInConsHome(['init', valName, '--chain-id', chainId])
|
|
@@ -437,7 +453,7 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
437
453
|
const [startCmd, startArgv] = image
|
|
438
454
|
? [
|
|
439
455
|
'docker',
|
|
440
|
-
dockerStartArgs(
|
|
456
|
+
dockerStartArgs(dockerOptions(homeDir), binary, startCliArgs, {
|
|
441
457
|
name: containerName,
|
|
442
458
|
ports: [port, p2pPort, apiPort, grpcPort, grpcWebPort, ...(extraPorts ?? [])],
|
|
443
459
|
}),
|
|
@@ -446,6 +462,7 @@ export function cosmosBase(parameters: CosmosBaseParameters) {
|
|
|
446
462
|
|
|
447
463
|
return await process.start(startCmd, startArgv as string[], {
|
|
448
464
|
emitter,
|
|
465
|
+
environment: childEnvironment,
|
|
449
466
|
resolver({ process: proc, resolve, reject }) {
|
|
450
467
|
const rpcUrl = `http://localhost:${port}`
|
|
451
468
|
|
|
@@ -636,6 +653,8 @@ export type CosmosEvmBaseParameters = CosmosEvmChainParameters & {
|
|
|
636
653
|
extraConfigToml?: Record<string, string>
|
|
637
654
|
/** Extra `start` command args, forwarded to cosmosBase. */
|
|
638
655
|
extraStartArgs?: string[]
|
|
656
|
+
/** @internal Chain wrappers translate domain options into this dependency. */
|
|
657
|
+
[executionDependency]?: ExecutionDependency
|
|
639
658
|
}
|
|
640
659
|
|
|
641
660
|
/**
|
package/src/docker.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { x } from 'tinyexec'
|
|
2
|
+
import type { ExecutionDependency } from './execution.js'
|
|
2
3
|
|
|
3
4
|
/**
|
|
4
5
|
* Home directory *inside* the container. The host's temp home dir is bind
|
|
@@ -65,6 +66,8 @@ export type DockerOptions = {
|
|
|
65
66
|
image: string
|
|
66
67
|
/** Host directory bind mounted at {@link CONTAINER_HOME}. */
|
|
67
68
|
homeDir: string
|
|
69
|
+
/** Internal files and environment shared by every chain CLI invocation. */
|
|
70
|
+
executionDependency?: ExecutionDependency
|
|
68
71
|
}
|
|
69
72
|
|
|
70
73
|
/**
|
|
@@ -80,7 +83,7 @@ function userArgs(): string[] {
|
|
|
80
83
|
return ['--user', `${process.getuid?.()}:${process.getgid?.()}`]
|
|
81
84
|
}
|
|
82
85
|
|
|
83
|
-
function mountArgs({ homeDir }: DockerOptions): string[] {
|
|
86
|
+
function mountArgs({ homeDir, executionDependency }: DockerOptions): string[] {
|
|
84
87
|
// -w pins the working dir to the mounted home. Some chain binaries (e.g. evmd)
|
|
85
88
|
// instantiate the app at command-construction time and create a `data/` dir
|
|
86
89
|
// relative to CWD *before* reading --home; if CWD is the image's default
|
|
@@ -93,8 +96,17 @@ function mountArgs({ homeDir }: DockerOptions): string[] {
|
|
|
93
96
|
// guaranteed-writable, and they're deleted with the home dir on stop().
|
|
94
97
|
return [
|
|
95
98
|
'-v', `${homeDir}:${CONTAINER_HOME}`,
|
|
99
|
+
...(executionDependency?.mounts ?? []).flatMap(({ source, target, readOnly }) => [
|
|
100
|
+
'-v', `${source}:${target}${readOnly ? ':ro' : ''}`,
|
|
101
|
+
]),
|
|
96
102
|
'-e', `HOME=${CONTAINER_HOME}`,
|
|
97
103
|
'-e', `TMPDIR=${CONTAINER_HOME}`,
|
|
104
|
+
...Object.entries(executionDependency?.environment ?? {}).flatMap(([name, value]) => [
|
|
105
|
+
'-e', `${name}=${value}`,
|
|
106
|
+
]),
|
|
107
|
+
// Docker cannot remove an ENV baked into an image, but overriding it with
|
|
108
|
+
// an empty value has the same os.Getenv semantics for chain binaries.
|
|
109
|
+
...(executionDependency?.unsetEnvironment ?? []).flatMap((name) => ['-e', `${name}=`]),
|
|
98
110
|
'-w', CONTAINER_HOME,
|
|
99
111
|
]
|
|
100
112
|
}
|
package/src/execution.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Files and environment required by every invocation of a chain binary.
|
|
3
|
+
*
|
|
4
|
+
* This is an internal seam between cosmosBase and its Docker/local-process
|
|
5
|
+
* adapters. Chain instance interfaces should expose domain-specific options
|
|
6
|
+
* and translate them into this shape themselves.
|
|
7
|
+
*/
|
|
8
|
+
export type ExecutionDependency = {
|
|
9
|
+
environment: Record<string, string>
|
|
10
|
+
unsetEnvironment?: readonly string[]
|
|
11
|
+
mounts?: readonly {
|
|
12
|
+
source: string
|
|
13
|
+
target: string
|
|
14
|
+
readOnly: true
|
|
15
|
+
}[]
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/** Symbol-keyed so generic execution settings do not become public chain options. */
|
|
19
|
+
export const executionDependency = Symbol('starskiff.executionDependency')
|
|
20
|
+
|
|
21
|
+
/** Builds an isolated child environment without mutating the parent process. */
|
|
22
|
+
export function applyExecutionEnvironment(
|
|
23
|
+
parent: NodeJS.ProcessEnv,
|
|
24
|
+
dependency?: ExecutionDependency,
|
|
25
|
+
): NodeJS.ProcessEnv {
|
|
26
|
+
if (!dependency) return parent
|
|
27
|
+
|
|
28
|
+
const environment = { ...parent }
|
|
29
|
+
for (const name of dependency.unsetEnvironment ?? []) delete environment[name]
|
|
30
|
+
Object.assign(environment, dependency.environment)
|
|
31
|
+
return environment
|
|
32
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ export { XPLA_DEFAULT_PRECOMPILES, XPLA_DEFAULT_IMAGE, type XpladParameters } fr
|
|
|
7
7
|
export { XRPLEVM_DEFAULT_PRECOMPILES, XRPLEVM_DEFAULT_IMAGE, type XrplevmParameters } from './instances/xrplevm.js'
|
|
8
8
|
export { MANTRA_DEFAULT_PRECOMPILES, MANTRA_DEFAULT_IMAGE, type MantraParameters } from './instances/mantra.js'
|
|
9
9
|
export { EVMD_DEFAULT_PRECOMPILES, EVMD_DEFAULT_IMAGE, type EvmdParameters } from './instances/evmd.js'
|
|
10
|
-
export { MAROO_NETWORKS, MAROO_DEFAULT_PRECOMPILES, MAROO_PREINSTALLS, MAROO_NATIVE_ERC20, MAROO_DEFAULT_PCL_ENTRYPOINTS, patchMaroodGenesis, type MaroodParameters, type MaroodNetwork, type MaroodNetworkPreset, type EvmPreinstall, type PatchMaroodGenesisOptions } from './instances/marood.js'
|
|
10
|
+
export { MAROO_NETWORKS, MAROO_DEFAULT_PRECOMPILES, MAROO_PREINSTALLS, MAROO_NATIVE_ERC20, MAROO_DEFAULT_PCL_ENTRYPOINTS, patchMaroodGenesis, type MaroodParameters, type MaroodPrivacyZkArtifacts, type MaroodNetwork, type MaroodNetworkPreset, type EvmPreinstall, type PatchMaroodGenesisOptions } from './instances/marood.js'
|
|
11
11
|
export type { EventTypes } from './process.js'
|
|
12
12
|
export { findFreePorts, type PortSet } from './ports.js'
|
|
13
13
|
export { testAccounts, type TestAccount } from './accounts.js'
|
package/src/instances/marood.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import fs from 'node:fs'
|
|
2
|
+
import path from 'node:path'
|
|
1
3
|
import * as Instance from '../Instance.js'
|
|
2
4
|
import { cosmosEvmBase, type CosmosEvmChainParameters, type Genesis } from '../cosmos.js'
|
|
3
5
|
import { resolveInstanceImage } from '../docker.js'
|
|
6
|
+
import { executionDependency, type ExecutionDependency } from '../execution.js'
|
|
4
7
|
import { MAROO_PREINSTALLS, type EvmPreinstall } from './marood-preinstalls.js'
|
|
5
8
|
|
|
6
9
|
export type { EvmPreinstall }
|
|
@@ -105,6 +108,18 @@ export const MAROO_DEFAULT_PCL_ENTRYPOINTS: readonly string[] = [
|
|
|
105
108
|
'maroo1gvmssnv7y40lqupyv88c39wwnca4luggmf5lq0',
|
|
106
109
|
]
|
|
107
110
|
|
|
111
|
+
export type MaroodPrivacyZkArtifacts =
|
|
112
|
+
| {
|
|
113
|
+
kind: 'generated-test'
|
|
114
|
+
/** Absolute host path containing generated, non-production test artifacts. */
|
|
115
|
+
directory: string
|
|
116
|
+
}
|
|
117
|
+
| {
|
|
118
|
+
kind: 'release'
|
|
119
|
+
/** Absolute host path containing an approved release artifact bundle. */
|
|
120
|
+
directory: string
|
|
121
|
+
}
|
|
122
|
+
|
|
108
123
|
export type MaroodParameters = CosmosEvmChainParameters & {
|
|
109
124
|
/**
|
|
110
125
|
* Run from a local `marood` binary on `PATH`.
|
|
@@ -114,6 +129,14 @@ export type MaroodParameters = CosmosEvmChainParameters & {
|
|
|
114
129
|
* assumed to be named `marood`.)
|
|
115
130
|
*/
|
|
116
131
|
binary?: string
|
|
132
|
+
/**
|
|
133
|
+
* External Privacy ZK artifacts required by maroo v0.8+.
|
|
134
|
+
*
|
|
135
|
+
* Omit this for a self-contained image whose artifacts and environment are
|
|
136
|
+
* already configured. Starskiff validates only the host path; marood's
|
|
137
|
+
* strict preflight remains the authority for artifact contents.
|
|
138
|
+
*/
|
|
139
|
+
privacyZkArtifacts?: MaroodPrivacyZkArtifacts
|
|
117
140
|
/**
|
|
118
141
|
* Network preset selecting chain ids and denoms. @default "testnet"
|
|
119
142
|
*
|
|
@@ -146,6 +169,63 @@ export type MaroodParameters = CosmosEvmChainParameters & {
|
|
|
146
169
|
patchGenesis?: (genesis: Genesis) => Genesis
|
|
147
170
|
}
|
|
148
171
|
|
|
172
|
+
const PRIVACY_ZK_CONTAINER_DIRECTORY = '/starskiff/privacy-zk-artifacts'
|
|
173
|
+
const PRIVACY_ZK_ARTIFACT_DIR_ENV = 'CLAIRVEIL_PRIVACY_ZK_ARTIFACT_DIR'
|
|
174
|
+
const PRIVACY_ZK_PREFLIGHT_MODE_ENV = 'CLAIRVEIL_PRIVACY_ZK_PREFLIGHT_MODE'
|
|
175
|
+
const PRIVACY_ZK_RUNTIME_ENVIRONMENT_ENV = 'CLAIRVEIL_PRIVACY_ZK_RUNTIME_ENVIRONMENT'
|
|
176
|
+
const TEST_PRIVACY_RELEASE_ENV = 'MAROO_TEST_PRIVACY_RELEASE_FROM_ARTIFACTS'
|
|
177
|
+
|
|
178
|
+
/** @internal Translates the marood-specific option into the generic execution seam. */
|
|
179
|
+
export function resolveMaroodPrivacyZkArtifacts(
|
|
180
|
+
artifacts: MaroodPrivacyZkArtifacts | undefined,
|
|
181
|
+
containerRuntime: boolean,
|
|
182
|
+
): ExecutionDependency | undefined {
|
|
183
|
+
if (!artifacts) return undefined
|
|
184
|
+
|
|
185
|
+
if (artifacts.kind !== 'generated-test' && artifacts.kind !== 'release') {
|
|
186
|
+
throw new Error(
|
|
187
|
+
'marood: privacyZkArtifacts.kind must be "generated-test" or "release".',
|
|
188
|
+
)
|
|
189
|
+
}
|
|
190
|
+
if (typeof artifacts.directory !== 'string' || !path.isAbsolute(artifacts.directory)) {
|
|
191
|
+
throw new Error('marood: privacyZkArtifacts.directory must be an absolute host path.')
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
let isDirectory = false
|
|
195
|
+
try {
|
|
196
|
+
isDirectory = fs.statSync(artifacts.directory).isDirectory()
|
|
197
|
+
} catch {
|
|
198
|
+
// Use the same actionable error for missing and unreadable paths.
|
|
199
|
+
}
|
|
200
|
+
if (!isDirectory) {
|
|
201
|
+
throw new Error(
|
|
202
|
+
`marood: privacyZkArtifacts.directory is not an existing directory: ${artifacts.directory}`,
|
|
203
|
+
)
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const artifactDirectory = containerRuntime
|
|
207
|
+
? PRIVACY_ZK_CONTAINER_DIRECTORY
|
|
208
|
+
: artifacts.directory
|
|
209
|
+
const environment: Record<string, string> = {
|
|
210
|
+
[PRIVACY_ZK_ARTIFACT_DIR_ENV]: artifactDirectory,
|
|
211
|
+
[PRIVACY_ZK_PREFLIGHT_MODE_ENV]: 'strict',
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (artifacts.kind === 'generated-test') {
|
|
215
|
+
environment[TEST_PRIVACY_RELEASE_ENV] = '1'
|
|
216
|
+
} else {
|
|
217
|
+
environment[PRIVACY_ZK_RUNTIME_ENVIRONMENT_ENV] = 'production'
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
return {
|
|
221
|
+
environment,
|
|
222
|
+
unsetEnvironment: artifacts.kind === 'release' ? [TEST_PRIVACY_RELEASE_ENV] : undefined,
|
|
223
|
+
mounts: containerRuntime
|
|
224
|
+
? [{ source: artifacts.directory, target: PRIVACY_ZK_CONTAINER_DIRECTORY, readOnly: true }]
|
|
225
|
+
: undefined,
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
149
229
|
/** Options for {@link patchMaroodGenesis}, mirroring the relevant `MaroodParameters`. */
|
|
150
230
|
export type PatchMaroodGenesisOptions = {
|
|
151
231
|
preset: MaroodNetworkPreset
|
|
@@ -325,12 +405,14 @@ export const marood = Instance.define((parameters?: MaroodParameters) => {
|
|
|
325
405
|
policyAdmin,
|
|
326
406
|
minterAddress,
|
|
327
407
|
entrypoints,
|
|
408
|
+
privacyZkArtifacts,
|
|
328
409
|
patchGenesis: userPatch,
|
|
329
410
|
...rest
|
|
330
411
|
} = params
|
|
331
412
|
|
|
332
413
|
// No default image (private node source): image or binary required.
|
|
333
414
|
const image = resolveInstanceImage('marood', params)
|
|
415
|
+
const privacyZkDependency = resolveMaroodPrivacyZkArtifacts(privacyZkArtifacts, Boolean(image))
|
|
334
416
|
|
|
335
417
|
// Same three-state semantics as evmd: omitted → maroo default set; explicit
|
|
336
418
|
// `undefined` → binary default (empty); `[]` / `[...]` → as given.
|
|
@@ -345,6 +427,7 @@ export const marood = Instance.define((parameters?: MaroodParameters) => {
|
|
|
345
427
|
// app.toml's compiled-in default is the mainnet EVM chain id; make the
|
|
346
428
|
// preset authoritative for both networks.
|
|
347
429
|
extraStartArgs: ['--evm.evm-chain-id', String(preset.evmChainId)],
|
|
430
|
+
[executionDependency]: privacyZkDependency,
|
|
348
431
|
patchGenesis: (genesis) =>
|
|
349
432
|
patchMaroodGenesis(genesis, { preset, preinstalls, policyAdmin, minterAddress, entrypoints, patchGenesis: userPatch }),
|
|
350
433
|
})
|
package/src/process.ts
CHANGED
|
@@ -20,6 +20,8 @@ export type ProcessResolverOptions = {
|
|
|
20
20
|
|
|
21
21
|
export type ProcessStartOptions = {
|
|
22
22
|
emitter: Emitter<EventTypes>;
|
|
23
|
+
/** Environment for the managed child process. */
|
|
24
|
+
environment?: NodeJS.ProcessEnv;
|
|
23
25
|
resolver(options: ProcessResolverOptions): void;
|
|
24
26
|
};
|
|
25
27
|
|
|
@@ -73,11 +75,11 @@ export function createProcess(name: string, options: ProcessOptions = {}): Proce
|
|
|
73
75
|
const errorMessages: string[] = [];
|
|
74
76
|
|
|
75
77
|
return {
|
|
76
|
-
start(command, args, { emitter, resolver }) {
|
|
78
|
+
start(command, args, { emitter, environment, resolver }) {
|
|
77
79
|
const { promise, resolve, reject } = Promise.withResolvers<void>();
|
|
78
80
|
|
|
79
81
|
child = exec(command, args, {
|
|
80
|
-
nodeOptions: { stdio: 'pipe' },
|
|
82
|
+
nodeOptions: { stdio: 'pipe', env: environment },
|
|
81
83
|
});
|
|
82
84
|
|
|
83
85
|
const proc = child.process!;
|