66 Commits

Author SHA1 Message Date
Roman
418e0142d6
test: invalid extension with extreme values 2025-10-30 13:08:57 +08:00
Roman
6b313641a7
fix: reduce complexity one step less 2025-10-30 13:07:14 +08:00
Roman
c931f318cb
fix: reduce cyclomatic complexity 2025-10-30 13:07:14 +08:00
Roman
9e8ba35651
test: erasure with fullErase idCommitments 2025-10-30 13:07:13 +08:00
Roman
37afea8218
fix: increase max rejects 2025-10-30 13:07:13 +08:00
Roman
f41cb4c319
test: multiple registers 2025-10-30 13:07:13 +08:00
Roman
2d57fe3caf
test: register invalid 2025-10-30 13:07:12 +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>
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
Roman
597181d075
test: show success when unauthorized upgrade after malicious 2025-10-08 13:12:55 +11:00
Roman
f7a328d614
fix: formatting 2025-10-07 15:48:32 +11:00
Roman
228239b7d9
test: malicious upgrade drains funds 2025-10-07 15:30:28 +11:00
Roman Zajic
e75ac913e5
chore: RLN contract unit test expansion 2 (#39)
* test: mass registration and erasure
- warning cleanup

* test: large pagination query

* test: empty range pagination query

* test: impact of duration changes

* test: upgrade with invalid implementation

* test: unauthorized merkle tree modifications

* test: owner configuration updates

* fix: update gas-snapshot
2025-09-30 09:15:30 +10:00
Tanya S
a1d97fcad9
Initialise TST MaxSupply on deployment (#37)
* Implement init maxSupply when deploying TST

* README and comments updates

* Move the maxSupply!=zero check to init function and add test

* Fix mintWithEth command in test/README.md

* Remove incorrect proxy deployment in TestStableTokenFactory

* Remove redundant post deploy check

* Update test/README with default token amount in ETH

* Update README section on Proxy address upgrade

* Add example env for TST commands

* Add prerequisites section to test/README
2025-09-25 09:56:36 +02:00
Tanya S
c3ec4be6b4
Add string revert error event for onlyOwnerOrMinter (#36)
* Add string revert for AccountNotMinter error

* Add TST initialize argument in WakuRlnV2.t.sol
2025-09-15 14:03:03 +02:00
Roman Zajic
c9f6ae5d8e
chore: RLN contract unit test expansion (#31)
* test: erasing non-existent membership

* test: grace period extension edge cases

* test: max total rate limit edge cases

* test: Merkle Tree update after erasure and reuse

* fix: indent

* test: contract wit zero grace period

* test: full cleanup erasure

* test: token transfer failures
- reentrancy protection

* test: WakuRlnV2 with ReentrancyGuard

* fix: line length

* fix: revert to original WakuRlnV2

* test: reinitialization protection - debug

* test: reinitialization protection - non debug

* test: simplify test reinitialization protection

* fix: MaliciousToken and split reentrancy test
- test__ReentrancyProtectionRegister
- test__ReentrancyProtectionWithdraw

* fix: add more logging to
- test__ReentrancyProtectionWithdraw

* fix: reinitialization protection test

* fix: price calculator reconfiguration

* test: zero price edge case
- add MockPriceCalculator

* fix: calculate impl for MockPriceCalculator

* fix: remove reentrancy tests

* fix: remove ReentrancyGuard import

* fix: recover original comment

* fix: update gas-snapshot

* fix: add revert reason to test reinitialization protection

* fix: cleanup MaliciousToken

* fix: line length

* fix: remove owner transfer in setup

* fix: line length
2025-09-12 22:54:13 +10:00
Tanya S
71191ce151
chore: Add mint function that requires ETH to burn (#33)
* remove ownable to clear compiler error

* Add mintWithEth function to TST to burn Eth

* Update test/README.md with mintWithETH usage

* remove unnecessary 'revert ETHTransferFailed' in mintWithETH

* Move emit functions to top of TestStabletoken.t.sol script

* Add max token supply mechanism for TST

* Linting fix

* Update max eth used in WakuRlnv2 test

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

* Use 1 to 1 eth burn per token ratio

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-11 10:45:43 +02:00
Tanya S
b4508dd0d4
Use proxy for token contract (#30)
* Add proxy contract for TST

* Fix token proxy update function to use provided new TST address

* Transfer token proxy contract ownership to deployer

* Add Token Proxy Contract Owner as init input

* Add UUPSUPgradeable to TST

* Formatting

* fix import format

* Add README to explain TST usage

* Linting fix

* Check TST test transfer return val

* Add descriptions in README for TST usage

* Fix linting

* Use TST token deployer in test conrtact, update test README

* USe assertTrue in TST test
2025-08-26 17:34:32 +02:00
Tanya S
900d4f95e0
chore: Add MINTER-ROLE and list to TST (#29)
* Add Approver list of accounts that can mint token

* Update Approver to Minter role

* Renaming of mapping and add events for minter add/remove

* Formatting fix
2025-08-07 10:17:04 +02:00
Tanya S
969d3ee22b
chore: Add new test token with only owner mint (#28)
* Add TestStableToken with only owner minting

* Add tests for TestStableToken

* Formatting

* Use 'Ownable' for access control

* fix linting
2025-07-30 08:51:26 +02:00
richΛrd
ad0dc9a81d
chore: remove permit (#27) 2025-06-21 19:11:08 -04:00
fryorcraken
b7e9a9b1bc
Adding funding address for drips (#25) 2025-04-10 12:08:28 +10:00
richΛrd
5d8fd57ae1
feat: permit (#22) 2024-11-01 16:22:15 -04:00
richΛrd
e46ce5aa1c
feat: deploy to Linea (#18) 2024-11-01 10:23:28 -04:00
Sergei Tikhomirov
cbd56ed0f4
chore: clarify Owner privileges in README as implemented in afb858 (#23) 2024-10-30 13:30:15 +01:00