Commit Graph

305 Commits

Author SHA1 Message Date
omahs e8310e3ea8
Fix typos (#503)
* fix typo

* fix typo

* fix typo

* fix typos

* fix typo
2023-11-03 09:29:40 +01:00
gusto ea1862864b
Docker compose static testnet configuration (#499)
* Add static node network configuration in a new compose file

* Update ports and fix testnet config

* Remove replicas

* Update testnet bootstrap config

* Remove replicas env var in static conf

* Bootstrap node depends on mixnodes

* Scheme version for compose.static.yml

Co-authored-by: Jakub <i+github@always.fail>

* Remove unnecessary context defintion

* Add container names in compose.static.yml

* Simplify compose services build context

---------

Co-authored-by: Jakub <i+github@always.fail>
2023-11-02 15:23:35 +02:00
Youngjoon Lee c3478cf6a6
Set voter to DA attestation (#498) 2023-11-02 18:44:31 +09:00
Al Liu ba90ed1b55
Nomos http API (#476)
* Info api

* Da blob api (#487)

* Add storage api for new http backend (#488)

* Mempool add APIs (#489)
2023-11-01 17:14:58 +08:00
GoodDaisy ff8fc577a0
Fix typos (#481)
Co-authored-by: Daniel Sanchez <sanchez.quiros.daniel@gmail.com>
2023-10-31 14:38:42 +01:00
Youngjoon Lee ea1dcb82fd
Increase the timeout of happy integration tests (#494) 2023-10-31 20:32:07 +09:00
Youngjoon Lee 7dce530d13 Revert: Stop using msg hash as a libp2p msg ID 2023-10-31 19:56:36 +09:00
Youngjoon Lee 722476f3b1 Stop using msg hash as a libp2p msg ID 2023-10-31 19:52:32 +09:00
Al Liu 9b3c675b3a
Metrics api (#466)
* Add metrics API
2023-10-31 17:20:04 +08:00
Youngjoon Lee 5e520ae194
Set consensus timeout conservatively for happy-path integration tests (#492) 2023-10-31 00:39:02 +09:00
Giacomo Pasini a487d8c7a0
Add DA utilities to nomos-cli (#493)
* Move da disseminate command into separate module

* Add utilities to retrieve block contents

* fix tests

* fix typo
2023-10-30 16:19:25 +01:00
gusto eeb88b9430
Docker compose consensus layer config (#482)
* Same consensus node list for all nodes

* Extract duplicate code and add debug info

* Update initial net peer list script

* Remove unused envvar
2023-10-30 16:51:40 +02:00
Giacomo Pasini e50561839d
Remove block contents from mempool (#485)
* Add Hash type param to Attestation and Certificate

* remove block contents from mempool
2023-10-30 12:38:04 +01:00
gusto 7fcfe890be
Configure supermajority threshold via envvars (#471) 2023-10-30 10:38:57 +02:00
Daniel Sanchez ef243b0ee5
Add Sigkill handling to node binary (#480)
* Implement ctrlc watcher service

* Add ctrlc service to nomos node bin

* Use 1 sized buffer
2023-10-30 09:36:07 +01:00
gusto d479721efd
Optional network capacity in simulations (#483)
* Make simulation net capacity optional

* Add cli flag to disable netcap
2023-10-30 06:26:45 +02:00
gusto 61ff62cb29
CI: Integration tests report (#484)
* Add missing dep to ci Dockerfile

* Add a map to store minimal tests report

* Use env vars for report messages

* Do not mutate variables outside the scipt block

* Write report to file
2023-10-27 20:54:56 +03:00
Giacomo Pasini c84c3fb93b
Allow deprecated type in Swarm (#486)
We have to use the type of the upstream dependency
2023-10-27 17:47:53 +02:00
gusto 54dd96dfff
Simulations overlay topo info (#479)
* Missing json feature for building standalone simapp

* Move dummy sim overlay to tests module

* OverlayInfoExt in simulation app

* Dump overlay info in simapp
2023-10-26 19:43:49 +03:00
Al Liu 1553f29bd9
Humanize array ser/deser (#468)
* humanize array ser/deser

* split fns

* use `const-hex`

* fix fmt

* create `nomos-utils` crate

* Human serde committeeid (#478)

* Human readable serde for CommitteeId

* Deserialize bytes to string if human readable

* Don't allocate if possible in human serde bytes

---------

Co-authored-by: gusto <bacv@users.noreply.github.com>
2023-10-26 23:16:10 +08:00
Giacomo Pasini 2f9ebbd32f
Storage api (#473)
* Change impl of StorageReceiver to Option<Bytes>

Load and remove messages return Option<Bytes> and not Bytes, so
let's change the implementation to work around that.

* Add storage/block http api to retrieve blocks from storage

* add tests for storage/block api

* debug tests

* tweak test node online condition
2023-10-25 12:46:26 +02:00
Daniel Sanchez 75b36020c2
Lifecycle update and implementations (#457)
* Update deps

* Implement base lifecycle handling in network service

* Implement base lifecycle handling in storage service

* Use methods instead of functions

* Pipe lifecycle in metrics service

* Pipe lifecycle in mempool service

* Pipe lifecycle in log service

* Pipe lifecycle in da service

* Pipe lifecycle in consensus service

* Refactor handling of lifecycle message to should_stop_service

* Update overwatch version to fixed run_all one
2023-10-25 12:10:21 +02:00
Giacomo Pasini 89b8e27612
Add API to revieve DA blobs (#477)
* Use Vec instead of HashMap in DaMsg::Get

* Add http API to retrieve DA blobs
2023-10-24 15:38:33 +02:00
Giacomo Pasini 3ce8cacb30
Revert "Reestablish connection when mixclient fails (#445)" (#472)
This reverts commit aa69eeca00.
2023-10-23 16:53:20 +02:00
Giacomo Pasini d528ebd2ea
Extract nomos-cli da stuff into shared module (#461)
This will be useful for other commands that might want to interact
with the network to perform tasks related to DA. One example is
the upcoming testnet demo.
2023-10-23 11:34:20 +02:00
Al Liu aa69eeca00
Reestablish connection when mixclient fails (#445)
* Reestablish connection when mixclient fails

* Add delay and remove select
2023-10-20 14:58:58 +08:00
Al Liu 98a8855a0e
axum backend for new http api (#465)
* axum backend
2023-10-20 14:10:05 +08:00
Al Liu 64a3436331
Update libp2p breaking dep (#470)
* update deprecated api
2023-10-20 14:08:15 +08:00
Gusto a3d9799121 Docker bootstrap node as sender receiver 2023-10-18 16:15:03 +03:00
Gusto 8f442005a5 Mixnet client address config 2023-10-18 16:14:24 +03:00
Gusto 56b2830d5a Add Readme for docker testnet 2023-10-17 15:55:01 +03:00
Gusto ddc79f2b0e Use predefined public key for mixnodes 2023-10-17 14:47:40 +03:00
Gusto 98b59edf1a Listen all interfaces in mixnode config 2023-10-17 14:46:41 +03:00
Gusto ae065bac7c Remove python scripts 2023-10-17 14:46:41 +03:00
Gusto 7edba33b33 Mixnode and libp2p node config files 2023-10-17 14:46:41 +03:00
Gusto 884d837ab5 History length typo 2023-10-17 14:46:41 +03:00
Gusto b521375ad4 Static mixnet nodes in docker compose 2023-10-17 14:46:41 +03:00
Gusto 474f5f7a19 Rename libp2p node config file in configuration script 2023-10-17 14:46:41 +03:00
Gusto 8275fc7817 Update libp2p node config 2023-10-17 14:46:41 +03:00
Gusto f14df0c479 Add libp2p feature flag for da dep 2023-10-17 14:46:41 +03:00
Gusto d50b845bf2 Update build command in Docker files 2023-10-17 14:46:41 +03:00
Youngjoon Lee 83d1ef2e03
Add default for `MixnetClientConfig::connection_pool_size` (#462) 2023-10-17 19:01:30 +09:00
Giacomo Pasini f90704f1d7
Save safe blocks contents to storage (#464) 2023-10-17 11:04:47 +02:00
Youngjoon Lee b997011c6a
Add serde default for `gossipsub::Config` (#463) 2023-10-17 18:04:13 +09:00
Youngjoon Lee 81c34036f7
test(unhappy): mask `sender` when comparing timeout_qcs (#458) 2023-10-17 00:20:28 +09:00
gusto 39d45d3c09
Dns or socket address for mixnet node config (#460) 2023-10-16 14:57:43 +02:00
Youngjoon Lee 9f69934fe2
Make libp2p gossipsub config configurable (#454)
* define GossipsubConfigDef to derive serde for gossipsub::Config

* refactor: move config-related codes into config.rs
2023-10-09 18:04:52 +09:00
Giacomo Pasini 2016f75213
Add API to return DA blobs (#453)
* Add API to return DA blobs

* remove pending blobs API
2023-10-09 10:53:01 +02:00
Daniel Sanchez f04c4a6492
Use specific revision on overwatch (#455) 2023-10-09 09:18:56 +02:00
Al Liu b43d268543
Finish the skeleton of the api for nomos-node (#451)
* finish the barebone of the api for nomos-node
2023-10-06 16:32:35 +08:00