gevulotnetwork / gevulot

Gevulot is an internet scale compute network for zero-knowledge proof generation and verification.
https://gevulot.com
Apache License 2.0
154 stars 48 forks source link

Add support for P2P protocol v1 (when orig. is v0) #175

Closed tuommaki closed 6 months ago

tuommaki commented 7 months ago

This change makes next step in P2P protocol versioning support. While at it, this also takes the first step to add metrics into v1 protocol.

The prometheus metrics export is not part of this change yet, though.

The protocol versioning change here is built to be backwards compatible. Message versions default to v0, but have support for optional v1 compatibility as well. This change does not yet have support for protocol version negotiation between nodes, though it might be that this won't be even necessary, if nodes upgrade fast enough.

tuommaki commented 6 months ago

I've been running this on our devnet node for some time now and it seems to co-operate with other nodes just fine. It can now also serve the resource requirement requests so :ok_hand:

Merging now, to proceed the next stage in testing.