14 Commits

Author SHA1 Message Date
Sydhds
894677563c Add AccountSlashed event in KarmaSC contract (#52)
* Add AccountSlashed event in KarmaSC contract
* Handle slash event in KarmaSCEventListener
2025-10-21 10:27:08 +02:00
Sydhds
d60b93416e Osv scanner required dependencies updates (#50)
* Update tracing-subscriber to 0.3.20
* Update alloy dependency to 1.0.38
* Update tonic, rustls & zeroize dependencies
* Update clap to 4.5.49
* Update opentelemetry to 0.31.0
2025-10-14 15:05:18 +02:00
Sydhds
b2f142b0e5 Add initial rln sc register in registry_listener (#33)
* Add initial rln sc register in registry_listener
* Generic over alloy provider
* Fix prover mock startup
* Update handle_transfer_event documentation
2025-08-29 10:18:37 +02:00
Vinh Trịnh
eec2ae76e9 Add CI workflow, resolve clippy warning (#29)
* feat: resolve clippy warning, remove unuse deps, add ci workflow

* chore: add protoc install to CI

* chore: add foundry for test job

* chore: fix benchmark and add comparison

* chore: just run bench 1 time

* chore: try boa-dev/criterion-compare-action@v3

* chore: run all benchmark

* chore: rerun CI

* chore: only run prover_bench|generate_proof

* chore: use matrix strategy for each bench

* feat: add osv-scanner workflow

* chore: not add manually, ill use github UI

* chore: remove changes from Cargo.lock and all Cargo.toml files to avoid conflict with feature/revise_deps branch

* chore: resolve clippy module_inception

* chore: try no bench = false again

* chore: run cargo-udeps with --all-features flags

* chore: update default prover run command

* chore: lint fix

* chore: add osv-scanner.yml to CI workflow

* chore: try osv-scanner v2.2.2
2025-08-28 16:49:25 +07:00
Vinh Trịnh
f4a41073e4 Use exact zerokit version, move common deps to workspace, remove unuse deps to reduce build size 2025-08-18 16:41:17 +07:00
Vinh Trịnh
1d44d60df2 Extend testcase timeout to prevent panic, seperate anvil feature for testcase. (#28)
* chore: update unit test timeout to avoid panic, seperate anvil feature for testcase use foundry's anvil

* chore: add constant for the timeout number
2025-08-18 16:09:19 +07:00
Sydhds
11b06a440d Add zeroize support for private key (#27) 2025-08-13 15:15:25 +02:00
Sydhds
dc9d7947b3 Various clippy fixes (#26) 2025-08-13 14:53:35 +02:00
Vinh Trịnh
802872e155 Test and fix smart contract interaction (#24)
* chore: add karma_sc_test, karma_tiers_test, rln_sc_test script

* chore: fix rustls panic erro in prover_cli

* fix: update TierLimits's validate method to handle first tier's minKarma starts at 0

* chore: add NoTier

* chore: update Dockerfile

* chore: update rust version and tooling to build rocksdb deps

* fix: refactor smart contract interaction scripts, add error enum and remove unuse codes

* fix: add PRIVATE_KEY env variable, seperate specific error types, update Dockerfile, remove config.example.toml and use clap's default_value instead

* chore: update Dockerfile

* chore: remove unuse register_user_with_commitment and redundant KarmaSCInstance::from
2025-08-12 22:39:18 +07:00
Sydhds
400d0155a7 Update for new KarmaTiers smart contract (#23)
* Update for new KarmaTiers smart contract
* Add Anvil unit test for KarmaTiers SC
* Add unit test for KarmaSC
* Add rln sc unit test
2025-07-31 11:40:50 +02:00
Sydhds
d33c1016cd Update && enable unit test: test_user_spamming_same_signal (#13)
* Update && enable unit test: test_user_spamming_same_signal
* Add debug_assert in epoch_counters_operands
* Write merkle tree inside db transaction
* Add note about error handling in RegistryListener
* Remove user if it cannot register it to smart contract
* Remove user in db if we cannot add to SC
* Add support for config file
2025-07-04 11:41:36 +02:00
Sydhds
cac235dbcc Add TierLimits unit tests (#12)
* Add TierLimits unit tests
2025-07-01 10:11:08 +02:00
Sydhds
9f4027ed2b Add UserRocksDb - initial attemp to rewrite UserDb with persistent st… (#10)
* Use RocksDb + PmTree for UserDb persistent storage
2025-06-27 15:41:41 +02:00
Sydhds
409cdcb651 Move all code related to smart contracts into lib smart_contract (#7)
* Move all code related to smart contracts into lib smart_contract
* Can start the prover with mocked smart contract
* Add KarmaTier integration
* Filter & validate initial tier limits
2025-06-13 12:04:10 +02:00