82 Commits

Author SHA1 Message Date
Roman
fb0fae7f27
Merge remote-tracking branch 'origin/chore-adversarial-tests' into chore-adversarial-tests
# Conflicts:
#	echidna.config.yaml
#	run_echidna_tests.sh
#	test/EchidnaTest.t.sol
2025-11-07 09:41:55 +08:00
Roman
be79a4d145
fix: cleanup after rebase 2025-11-07 09:40:33 +08:00
Roman
5d80fabd5a
fix: line length 2025-11-07 09:30:14 +08:00
Roman
f48a95be30
fix: invalid commitments in
test_attemptErasureRace_WakuRLN
2025-11-07 09:30:13 +08:00
Roman
4ac19d2d20
fix: invalid commitment in test_attemptExtensionRace_WakuRLN 2025-11-07 09:30:13 +08:00
Roman
9fa235571d
fix: test_attemptExtensionRace_WakuRLN 2025-11-07 09:30:13 +08:00
Roman
4e381c7356
fix: Solidity version 2025-11-07 09:30:13 +08:00
Roman
fb1053a8a7
test: Echidna test replay 2025-11-07 09:30:13 +08:00
Roman
f8d670e41e
fix: remove test_MultiUserEraseReuseRace
- test_TimestampManipulationRaces
2025-11-07 09:28:03 +08:00
Roman
7c8d2d7b89
fix: delete MaliciousImplementation 2025-11-07 09:26:29 +08:00
Roman
aefc0ed5a8
fix: delete failing tests
- test_MaliciousUpgradeDrainsFunds
- testFrontrunning_RegistrationRevertsForVictim
- testFrontrunning_SetFillingSpam
2025-11-07 09:26:28 +08:00
Roman
917265959b
test: register during spam conditions 2025-11-07 09:26:28 +08:00
Roman
f45fb65e9d
fix: unused variables 2025-11-07 09:26:28 +08:00
Roman
e4a81c9edc
test: front running for registration 2025-11-07 09:26:28 +08:00
Roman
2463329182
fix: rename tests 2025-11-07 09:26:28 +08:00
Roman
af5839a253
test: timestamp manipulation 2025-11-07 09:26:28 +08:00
Roman
af846b2121
fix: remove offchain lazy erase test - rate limit still applies 2025-11-07 09:26:27 +08:00
Roman
e5867df29e
fix: line length 2025-11-07 09:26:27 +08:00
Roman
aa95aadef1
test: offchain proof post lazy erase
- multi-user erase reuse race
2025-11-07 09:26:27 +08:00
Roman
0f39a040eb
test: show success when unauthorized upgrade after malicious 2025-11-07 09:26:27 +08:00
Roman
f45228e51b
fix: formatting 2025-11-07 09:26:27 +08:00
Roman
ec524dd244
test: malicious upgrade drains funds 2025-11-07 09:26:25 +08:00
Roman Zajic
f5fff5cdc2
chore: fuzz test expansion (#40)
* test: register invalid

* test: multiple registers

* fix: increase max rejects

* test: erasure with fullErase idCommitments

* fix: reduce cyclomatic complexity

* fix: reduce complexity one step less

* fix: run tests in parallel

* fix: undo run tests in parallel - default already

* test: invalid extension with extreme values

* fix: line length

* test: set MaxTotalRateLimit

* test: set ActiveDuration

* test: Merkle inserts

* test: Merkle erasures

* test: GetRateCommitmentsRange

* test: GetMerkleProof

* fix: optimized MerkleInsert MerkleErasures

* fix: update gas snapshot

* test: malicious upgrade drains funds

* fix: formatting

* test: show success when unauthorized upgrade after malicious

* test: offchain proof post lazy erase
- multi-user erase reuse race

* fix: line length

* fix: remove offchain lazy erase test - rate limit still applies

* fix: remove fuzz tests from CI run

* fix: formatting

* fix: formatting coverage

* test: timestamp manipulation

* fix: rename tests

* test: front running for registration

* fix: unused variables

* test: register during spam conditions

* fix: delete failing tests
- test_MaliciousUpgradeDrainsFunds
- testFrontrunning_RegistrationRevertsForVictim
- testFrontrunning_SetFillingSpam

* fix: delete MaliciousImplementation

* fix: formatting with a new Foundry version

* test: testEraseAndReuse with Echidna

* fix: remove limit check

* fix: remove test_MultiUserEraseReuseRace
- test_TimestampManipulationRaces

* fix: skip Echidna contract during forge test

* test: Echidna contract with invariants
- registerMembership
- attemptExtensionRace
- attemptErasureRace

* fix: tune config file

* fix: run and cleanup scripts for echidna

* test: Echidna test replay

* fix: Solidity version

* fix: test_attemptExtensionRace_WakuRLN

* fix: invalid commitment in test_attemptExtensionRace_WakuRLN

* fix: invalid commitments in
test_attemptErasureRace_WakuRLN

* fix: line length

* fix: skip all Echidna tests in CI

* test: register invalid

* test: multiple registers

* fix: increase max rejects

* test: erasure with fullErase idCommitments

* fix: reduce cyclomatic complexity

* fix: reduce complexity one step less

* test: invalid extension with extreme values

* fix: line length

* test: set MaxTotalRateLimit

* test: set ActiveDuration

* test: Merkle inserts

* test: Merkle erasures

* test: GetRateCommitmentsRange

* test: GetMerkleProof

* fix: optimized MerkleInsert MerkleErasures

* fix: update gas snapshot

* fix: formatting

* fix: remove tests with high overlap

* fix: remove all tests originally meant for fuzzing

* fix: rename merged Echidna tests

* fix: formatting

* test: fuzzing for essential invariants

* test: EchidnaTest contract

* fix: remove unnecessary imports

* fix: remove unnecessary helpers

* fix: remove bounds from invariants

* fix: change test mode to property

* fix: update run script

* fix: max_test_rejects back to the original value

* fix: remove unused local variables
2025-11-07 09:20:49 +08:00
Roman
02389952a4
fix: skip all Echidna tests in CI 2025-10-29 15:06:45 +08:00
Roman
1cd3c91d87
fix: line length 2025-10-29 14:57:42 +08:00
Roman
910f757c9c
fix: invalid commitments in
test_attemptErasureRace_WakuRLN
2025-10-29 14:45:03 +08:00
Roman
c4d0e7f424
fix: invalid commitment in test_attemptExtensionRace_WakuRLN 2025-10-29 13:37:13 +08:00
Roman
5a2364a6ee
fix: test_attemptExtensionRace_WakuRLN 2025-10-28 18:09:09 +08:00
Roman
2466d86788
fix: Solidity version 2025-10-28 18:07:54 +08:00
Roman
6541accc59
test: Echidna test replay 2025-10-28 17:59:47 +08:00
Roman
d7856103a0
fix: run and cleanup scripts for echidna 2025-10-27 14:17:36 +08:00
Roman
f735f68b5b
fix: tune config file 2025-10-27 13:59:00 +08:00
Roman
ab0aed0bbc
test: Echidna contract with invariants
- registerMembership
- attemptExtensionRace
- attemptErasureRace
2025-10-27 13:31:46 +08:00
Roman
0be627965f
fix: skip Echidna contract during forge test 2025-10-27 13:12:25 +08:00
Roman
6db28fa889
fix: remove test_MultiUserEraseReuseRace
- test_TimestampManipulationRaces
2025-10-27 12:55:35 +08:00
Roman
199ed30555
fix: remove limit check 2025-10-24 14:17:45 +08:00
Roman
38f506c22c
test: testEraseAndReuse with Echidna 2025-10-24 14:07:43 +08:00
Roman
499d90062b
fix: formatting with a new Foundry version 2025-10-20 15:28:00 +08:00
Roman
d746ef194c
fix: delete MaliciousImplementation 2025-10-20 09:51:49 +08:00
Roman
192fe28d9c
fix: delete failing tests
- test_MaliciousUpgradeDrainsFunds
- testFrontrunning_RegistrationRevertsForVictim
- testFrontrunning_SetFillingSpam
2025-10-20 09:31:22 +08:00
Roman
704f017cc3
test: register during spam conditions 2025-10-15 13:09:33 +11:00
Roman
434c74009b
fix: unused variables 2025-10-15 12:10:27 +11:00
Roman
b2d6cdb851
test: front running for registration 2025-10-15 12:03:42 +11:00
Roman Zajic
e629c8f3c3
Merge branch 'main' into chore-adversarial-tests 2025-10-14 09:58:59 +11:00
Roman
46fbccb22f
fix: rename tests 2025-10-13 14:32:45 +11:00
Roman
48ec27459d
test: timestamp manipulation 2025-10-13 14:24:15 +11:00
Tanya S
851fa0803b
Add minimum mint value to use mintWithEth function (#44)
* mintWithEth function now requires minimum amount

* Update README and comments to explain minting ratio and lower limit

* Update test/TestStableToken.t.sol

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix linting

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
test-stable-token-0.1.0
2025-10-10 08:12:59 +02:00
Roman
3bce55abc4
fix: remove offchain lazy erase test - rate limit still applies 2025-10-10 09:03:55 +11:00
Roman
842e0f1a89
fix: line length 2025-10-09 14:38:33 +11:00
Roman
e3e3d31d22
test: offchain proof post lazy erase
- multi-user erase reuse race
2025-10-09 13:33:42 +11:00