* Mix: add connection maintenance
* refactor: abstract all maintenance logic into `nomos-mix` crate
* clippy happy;
* use fixed for paramters, instead of f32
* test: send blob with closed receiver
* fix: add tracing-subscriber dep
* test: unwrap on not existing blob_col_idx
* fix: add third node
* test: write orphan blob info into mempool
* test: indexer filtering with app_id
* fix: assert on result returned from indexer
* fix: remove custom logs from verifier service
* fix: remove newline from verifier service
* Metrics layer configuration in nomos-tracing
* Add metrics layer to tracing service
* Use http/proto for prometheus
* Add metrics layer to integration tests
* Use metrics layer in cfgsync
* Plug metric in node and tests
* Remove old metrics
* Use otlp metrics in mempool
* tmp grafana stack
* Testnet configure otlp tracing
* tmp: Configurable loki and tempo in cfgsync
* Rename nomos-log to nomos-tracing-service
* nomos-tracing crate for tracing layer creation
* Use multiple layers in nomos-tracing-service
* Tracing in tests and testnet
* Tempo volume instead of local host dir
* Use executor in tests instead of nomos node
* Executor config from node config
* Bring generics to the testing game
* Fill in missing gaps in test
* Implement testnode wrapper
* Use sleep on dispersal service instead
* Fix cfgsync
* Clippy happy
* Clippy happy tests
* Mixnet config in tests for validator
* Tests: General config and multiple nodes (#832)
* Use executor in tests instead of nomos node
* Bring generics to the testing game
* Fill in missing gaps in test
* Clippy happy
* Mixnet config in tests for validator
* Derive different types of configs from general in tests
* Validator and executor in cfgsync
---------
Co-authored-by: danielSanchezQ <3danimanimal@gmail.com>
* Tests executor node mix config (#834)
* Merge branch 'master' into tests-executor-node-mix-config
* add mix configs
---------
Co-authored-by: danielSanchezQ <3danimanimal@gmail.com>
Co-authored-by: Youngjoon Lee <5462944+youngjoon-lee@users.noreply.github.com>
* Mix: remove all of the previous mixnet stuff
* Mix: Add mix service
* Integrate mix service to the node
* Add mock mix service for DA integration tests
* clippy happy
* use explicit function name and add TODOs
* remove the redundant use of tokio::sync::broadcast channel in mix adapter
* add mix service to nomos-executor binary
* removed mock mix backend and related adapters
Use the real mix backend for DA integration tests
* fix compile error generated when merging master
* rename all `MixNetwork*` to `Mix*` for further changes
* use explicit name for adapters
* Mix: Perform broadcasting within the mix service (#829)
* rename relay variables properly
* Implement adapter for executor
Refactored into common macro
* Executor and node indexer types
* Sampling service generic over network adapter
* Verifier changes tmp
---------
Co-authored-by: Gusto <bacvinka@gmail.com>
* Add macro to share adapter implementation for both validator and executor
* Fix imports in binaries
* Adapt cryptarchia types in binaries
* Fix tests build
* Added basic dispersal structure
* Expand impl
* Pull events from network service
* Implement network adapter
Tie types together in service
* Fill up service processing
* Tie up types in kzgrs backend implementation
* Implement disperse
* Pipe encode and dispersal
* Create mempool adapter
* Add mempool adapter
* Tiny comment
* Refactor common things in backends
* Further extract to common
* Extract dial_peers
* Pipe out executor events
* Add wrapper settings
* Dial up dispersal peers
* Clippy happy
* dial_peers -> dial_validator_subnetwork_peers
* Add members list to membership trait
* Implement peers selection and dialing up from specification
* Fix tests
* Fix tiny doc
* Handle replication messages
* Multiple indexes for kzgrs verifier
* Add rocksdb storage to node config
* Configurable delay before sending blob info to mempool
* Dial peers in same subnet for replication
* Update da integration tests
* Update nomos node tests
* Load kzgrs config from file
* SLOW_ENV set true for macos CI
* Assert retrieved blobs in dissemination test
* Kzgrs params deserialize unchecked
* Use common test node in da tests
* Pick ranged subnetids when sampling
* Da network settings for integration tests
* Predefined node keys and deterministic rng
* Disperse kzgrs encoded blob
* Cli swarm fixes
* Increase indexer integration test timeout
* Check dispersal responses in cli da adapter
* DA membership configuration in node tests
* Nomos Cli act as a node in tests
* Increase timeout for dispersal tests
* Different node configurations for da tests
* Collect unique ids for sampling
* Add PoL crate
* promote cl crate to nomos-node repo
* Integrate PoL into consensus
* remove metal feature
* install risc0 on ci
* more risc0 install
* fix da tests
* pass gh token
* fix tests and run in release mode
* clippy allow
* do not run in release mode
* drop windows in CI
* execute heavy tests nightly or accelerated in macos
* fmt
* configurable slot time
* use xlarge workers
* fix workflows
* remove unstable test
* use xlarge runners
* separate integrations tests
* fix features
* add token to ci
* downgrade runners
* fix integration tests
* revert testing changes and use risc0 dev mode
* fix coverage risc0 install
* increase slot time
* use cargo binstall
* clean before coverage
* first iteration, does not compile due to incompatible types
* Trigger sampling in node (#725)
* Sampling service in node
* Sampling in da integration tests
---------
Co-authored-by: gusto <bacv@users.noreply.github.com>
* Add sampling relay to consensus and massage all generics
* Pipe in sampling filtering of blob info
* Add mark in block
* Pipe validate block
* Refactor mark_in_block -> mark_complete
* Fix generics on tests
* Fix generics on tests
* Fix rebase
* Cargo fmt after rebase
* Sampling service configuration
* Sampling service config in indexer integration tests
---------
Co-authored-by: Gusto <bacvinka@gmail.com>