563 Commits

Author SHA1 Message Date
Dmitriy Ryajov
6201ce0ed8
feat: add single-block slot proof tests and update NimGroth16 backend configuration 2025-06-05 15:58:17 +10:00
Dmitriy Ryajov
a202eb8938
refactor: rename proverBackendCmd to proverBackend and standardize enum values 2025-06-05 15:58:17 +10:00
Dmitriy Ryajov
8b1d9b86c4
restore tests 2025-06-05 15:58:16 +10:00
Dmitriy Ryajov
318dc20fa0
Fix typo in testproverfactory.nim: correct getZKeyFile to getZkeyFile 2025-06-05 15:58:16 +10:00
Dmitriy Ryajov
12eb464e3b
Fix import statement in testslots.nim: replace testbackendfactory with testproverfactory 2025-06-05 15:58:16 +10:00
Dmitriy Ryajov
086e6f10e0
Refactor backend structure: remove unused files, add NimGroth16 support, and enhance prover functionality 2025-06-05 15:58:15 +10:00
Dmitriy Ryajov
a77dcc14bd
Refactor Circom compatibility backend and add NimGroth16 backend implementation 2025-06-05 15:58:15 +10:00
Eric
aa00566d29
update to websockets addresses for hardhat connection
Also, catch exceptions on JsonRpcProvider.close, which should not need to be done, as this routine should not raise any exceptions.
2025-06-05 15:58:13 +10:00
Eric
4616c48931
revert posix-only verbose unittest output
It didn't fix the error with invalid proofs in windows in ci
2025-06-05 15:58:13 +10:00
Eric
2bfd5241e3
fix previous commit compilation 2025-06-05 15:58:12 +10:00
Eric
7c00329d90
try removing verbose output to see if windows ci passes 2025-06-05 15:58:12 +10:00
Eric
8f4dae1b60
logging: show test setup/teardown in logs 2025-06-05 15:58:12 +10:00
Eric
348764550b
try increasing polling interval to see if this has an effect on windows in ci 2025-06-05 15:58:12 +10:00
Eric
eebeb8abbf
verbose unittest2 output to stdout 2025-06-05 15:58:12 +10:00
Eric
b8b93d7981
update after rebase 2025-06-05 15:58:12 +10:00
Eric
9d605a554e
formatting 2025-06-05 15:58:11 +10:00
Eric
98a828e620
fix compilation errors in windows 2025-06-05 15:58:11 +10:00
Eric
8fcd97738d
fix eventually symbol resolution
Because `eventuallySafe` calls the symbol `eventually`, it should be declared before `proc eventually` is declared to avoid ambiguous symbol lookups.
2025-06-05 15:58:11 +10:00
Eric
cff38a7eee
force kill windows test processes
In situations like timeouts, windows will hang when attempting to close the test process streams. In this case, we have to force kill the test process externally. This is the same process as force killing hardhat nodes after they are already terminated, but windows refuses hangs when closing their process streams. This commit creates a forceKillProcess utility that allows a process to be killed by its process name and matching commandline criteria, like TestId (for test process) or --port (for hardhat)
2025-06-05 15:58:11 +10:00
Eric
e99dc1dc9c
Reinstate unittest > unittest2, move eventually to ./asynctest 2025-06-05 15:58:11 +10:00
Eric
660a0e27b5
Don't store hardhat logs in memory and do not print to term even if DebugHardhat=true
Hardhat output is logged to file in hardhat.log for each test, and printing to screen is not necessarily needed as it is already logged to file and can create clutter in the output, so stop writing logging output to memory and writing to screen.
2025-06-05 15:58:10 +10:00
Eric
ebc71838b8
re-enable debug logging in codex nodes
Since the HttpClient now supports async, re-enable debug logging in the Codex nodes
2025-06-05 15:58:10 +10:00
Eric
6e1e8a0e5e
Remove new implementation of eventuallySafe by overidding the default params of eventually
With this fix in, there is no need to use the asynctest update that sets longer defaults for eventually, so downgrade asynctest
2025-06-05 15:58:10 +10:00
Eric
8b192df271
safeEventually > eventuallySafe 2025-06-05 15:58:10 +10:00
Eric
cb20b54213
fix: forcefully kill windows hardhat processes after termination
On windows, termination of hardhat processes would not actually kill the process, and then closing the process' streams would then hang the calling nim process. To get around this, the process is now killed externally using a script, winkillhardhat.sh. This script first queries open processes by inspecting the command line value of all "node.exe" processes, searching for "vendor/codex-contracts-eth" and for the port parameter it was started with. After querying, the process is killed using the `Stop-Process` powershell command (passing the pid of the windows process).
2025-06-05 15:58:10 +10:00
Arnaud
9005522633
Reduce the number of requests for asserts in tests 2025-06-05 15:58:10 +10:00
Eric
c16f8d38a2
formatting 2025-06-05 15:58:09 +10:00
Eric
91570b46ae
attempt to kill windows hardhat process
Windows hangs when attempting to hardhat's process streams, so try to kill the process externally.
TODO: This doesn't actually kill the process, as the pid given by chronos is an msys2 pid, and the command is used to kill a windows process. `ps -ef` in msys2 also doesn't show hardhat running as a process, so the only way to kill the process is to kill it with the windows pid. So we need to figure out a way to get a windows pid from the msys2 pid.
2025-06-05 15:58:09 +10:00
Eric
3b51d24b09
add new line to stdout/stderr logs when logging lines 2025-06-05 15:58:09 +10:00
Eric
84de0abf67
fix compilation error 2025-06-05 15:58:09 +10:00
Eric
ac588b99ce
write to stdout/stderr as the stream is read, rearrange node stop logging 2025-06-05 15:58:09 +10:00
Eric
817c2bc82d
remove unneeded exception from start raises 2025-06-05 15:58:09 +10:00
Eric
e1cc23d4fd
Add "starting test" log to multinodes logging output for context 2025-06-05 15:58:08 +10:00
Eric
a8c573e8aa
unittest2 > unittest1 2025-06-05 15:58:08 +10:00
Eric
a3db38d779
remove noCancel from node startup in multinodes 2025-06-05 15:58:08 +10:00
Eric
41eca535e4
Remove noCancel from captureProcessOutput call 2025-06-05 15:58:08 +10:00
Eric
114a46afa2
Continuously read from stdout/stderr to prevent buffers from filling 2025-06-05 15:58:08 +10:00
Eric
a9b094ae86
reinstate logging after it also failed on windows and ci 2025-06-05 15:58:08 +10:00
Eric
a52a53ba52
disable all logging to see if windows passes 2025-06-05 15:58:07 +10:00
Eric
9084dd7b14
Move test assertions at end of start so that test.status can be set after timeout 2025-06-05 15:58:07 +10:00
Eric
4f2f000a93
fix rebase on top of async http client change 2025-06-05 15:58:07 +10:00
Eric
3ec35dc788
Remove debug from twonodesconfig 2025-06-05 15:58:07 +10:00
Eric
6bef231297
Add wait to stdout/stderr stream future 2025-06-05 15:58:07 +10:00
Eric
daa23f4ffb
fix windows issue where reading stdout/stderr hangs forever 2025-06-05 15:58:07 +10:00
Eric
9d8dbee9aa
ensure runTests doesn't raise CancelledError
TrackedFutures now only accepts Futures that do not raise any exceptions
2025-06-05 15:58:06 +10:00
Eric
f93112dc28
Remove DebugCodexNodes
- Codex nodes will log to file by default, so this parameter could be removed.
- Add NoCodexLogFilters define, that unsets chronicles' topic filters when logging codex nodes chronicles logs to file
2025-06-05 15:58:06 +10:00
Eric
4da5c8c372
do not re-raise CancelledError as convertError not used in async procs 2025-06-05 15:58:06 +10:00
Eric
fa772f7ac6
re-raise CancelledError 2025-06-05 15:58:06 +10:00
Eric
139aa6eef8
readd prevention of hanging when closing process streams on windows 2025-06-05 15:58:06 +10:00
Eric
e7a9adab21
Add debugging and assertions after test run
Mostly to debug in windows
2025-06-05 15:58:06 +10:00