You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: test-suite/README.md
+8-4Lines changed: 8 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -98,12 +98,13 @@ cd test-suite/fhevm
98
98
bun run deploy --network testnet
99
99
bun run test input-proof
100
100
bun run telemetry-smoke
101
-
bun run clean --purge-local-cache
101
+
bun run clean --purge-build-cache
102
102
```
103
103
104
104
All `clean` purge flags are fhevm-scoped:
105
105
-`--purge-images` removes images referenced by fhevm compose services.
106
-
-`--purge-build-cache` and `--purge-local-cache` remove local Buildx cache directory (`.buildx-cache` by default, or `FHEVM_BUILDX_CACHE_DIR` if set).
106
+
-`--purge-build-cache` removes the local Buildx cache directory (`.buildx-cache` by default, or `FHEVM_BUILDX_CACHE_DIR` if set).
107
+
-`--purge-local-cache` is a compatibility alias for `--purge-build-cache`.
107
108
-`--purge-networks` removes Docker networks labeled with the active compose project only.
108
109
109
110
For `deploy --coprocessors N` with `N > 1`, `cast` (Foundry) must be installed locally to derive per-coprocessor accounts from `MNEMONIC`.
@@ -186,11 +187,11 @@ For agent workflows, prefer explicit command+flag forms from this table.
186
187
|`test`|`-v, --verbose`| Verbose test output. |
187
188
|`test`|`-r, --no-relayer`| Disable Rust relayer in tests. |
188
189
|`test`|`--no-hardhat-compile`| Skip compile when artifacts are already up-to-date. |
189
-
|`clean`|`--purge`| Shorthand for all purge flags below. |
190
+
|`clean`|`--purge`| Shorthand for `--purge-images --purge-build-cache --purge-networks`. |
190
191
|`clean`|`--purge-images`| Remove images referenced by fhevm compose services only. |
191
192
|`clean`|`--purge-build-cache`| Remove local Buildx cache dir (`.buildx-cache` or `FHEVM_BUILDX_CACHE_DIR`). |
192
193
|`clean`|`--purge-networks`| Remove Docker networks labeled with the active compose project only. |
193
-
|`clean`|`--purge-local-cache`|Remove local Buildx cache dir (`.buildx-cache`or `FHEVM_BUILDX_CACHE_DIR`). |
194
+
|`clean`|`--purge-local-cache`|Alias of `--purge-build-cache`(kept for compatibility). |
194
195
|`pause` / `unpause`|`host` or `gateway`| Contract pause controls. |
195
196
|`upgrade`|`<service>`| Restart selected service compose stack. |
196
197
|`logs`|`<service>`| Stream container logs for one service. |
@@ -217,6 +218,9 @@ When resuming:
217
218
- Services **before** the resume step are preserved (containers + volumes kept)
218
219
- Services **from** the resume step onwards are torn down and redeployed
219
220
221
+
Multicoprocessor safety note:
222
+
- If you change multicoprocessor topology (`--coprocessors` and/or `--coprocessor-threshold`) while using `--resume` from `coprocessor` or later, the CLI intentionally forces resume from `minio` to reset key material coherently across all coprocessors.
223
+
220
224
### Deploying a single step
221
225
222
226
To redeploy only a single service without touching others:
console.log(` ${COLORS.yellow}deploy${COLORS.reset}${COLORS.cyan}[--build] [--local] [--network testnet|mainnet] [--coprocessors N] [--coprocessor-threshold T] [--resume STEP] [--only STEP] [--telemetry-smoke] [--strict-otel]${COLORS.reset} Deploy the full fhevm stack`);
90
91
console.log(` ${COLORS.yellow}pause${COLORS.reset}${COLORS.cyan}[CONTRACTS]${COLORS.reset} Pause specific contracts (host|gateway)`);
91
92
console.log(` ${COLORS.yellow}unpause${COLORS.reset}${COLORS.cyan}[CONTRACTS]${COLORS.reset} Unpause specific contracts (host|gateway)`);
92
-
console.log(` ${COLORS.yellow}test${COLORS.reset}${COLORS.cyan}[TYPE]${COLORS.reset} Run tests (input-proof|user-decryption|public-decryption|delegated-user-decryption|random|random-subset|operators|erc20|debug)`);
93
+
console.log(` ${COLORS.yellow}test${COLORS.reset}${COLORS.cyan}[TYPE]${COLORS.reset} Run tests (${testTypes})`);
93
94
console.log(` ${COLORS.yellow}upgrade${COLORS.reset}${COLORS.cyan}[SERVICE]${COLORS.reset} Upgrade specific service`);
@@ -2107,7 +2108,7 @@ function resolveEffectiveResumeStep(options: DeployOptions): string | undefined
2107
2108
constadjustedStep="minio";
2108
2109
if(options.resumeStep!==adjustedStep){
2109
2110
logWarn(
2110
-
`Requested resume step '${options.resumeStep}' is too late for multicoprocessor topology changes. Forcing resume from '${adjustedStep}' to reset key material and chain state coherently.`,
2111
+
`Requested resume step '${options.resumeStep}' is too late for multicoprocessor topology changes. Forcing resume from '${adjustedStep}' for a full key-material reset (this intentionally redeploys the full stack to keep key digests coherent).`,
2111
2112
);
2112
2113
}
2113
2114
returnadjustedStep;
@@ -2569,15 +2570,13 @@ function parseCleanArgs(args: string[]): CleanOptions {
2569
2570
purgeImages: false,
2570
2571
purgeBuildCache: false,
2571
2572
purgeNetworks: false,
2572
-
purgeLocalCache: false,
2573
2573
};
2574
2574
2575
2575
for(constargofargs){
2576
2576
if(arg==="--purge"){
2577
2577
options.purgeImages=true;
2578
2578
options.purgeBuildCache=true;
2579
2579
options.purgeNetworks=true;
2580
-
options.purgeLocalCache=true;
2581
2580
continue;
2582
2581
}
2583
2582
if(arg==="--purge-images"){
@@ -2593,7 +2592,7 @@ function parseCleanArgs(args: string[]): CleanOptions {
2593
2592
continue;
2594
2593
}
2595
2594
if(arg==="--purge-local-cache"){
2596
-
options.purgeLocalCache=true;
2595
+
options.purgeBuildCache=true;
2597
2596
continue;
2598
2597
}
2599
2598
usageError(`Unknown option for clean: ${arg}`);
@@ -2623,11 +2622,7 @@ function clean(args: string[]): void {
2623
2622
}
2624
2623
2625
2624
if(options.purgeBuildCache){
2626
-
logInfo("Removing local fhevm Buildx cache only.");
0 commit comments