* Update proto file with Tx 'estimated gas used' field
* Update tx_counter according to tx gas quota
* Feature/user spam limit checks (#47)
* Print proof generation error before sending it
* Check user spam limit in grpc send_transaction endpoint
* Add initial code for handling multiple merkle tree in UserDB
* Add unit test for multi tree
* Add test_new_multi_tree unit test
* Introduce UserDbConfig
* Initial code to use Zerokit 0.9 + disable parallel feature
* Support IdSecret for user identity secret hash
* Fix clippy + bench
* Use PmTreeConfig builder
* Improve prover_bench perf
* Fix prover_bench 2nd assert
* Fix prover_bench 2nd assert 2
* Can now enable trace for bench prover_bench
* Use anyhow for error handling (+ error context) in prover_cli (#42)
* Use anyhow for error handling (+ error context) in prover_cli
* Cargo fmt pass
* Feature/feature/init user db ser de 2 (#45)
* Add user db serializer && deserializer init & re-use
* 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
* 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
* 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
* Add initial code for user db (user reg + tx counter + tier info)
* Switch to scc hashmap (+ updated benchmark)
* Add KSC into UserDB
* Start user db service in prover main
* Separate between user db service & user db
* Add set tier limits grpc endpoint
* Set tier limits unit test
* Use derive_more