Skip to content

249 minows integration - #251

Open
JonKuqi wants to merge 7 commits into
mainfrom
249-minows-integration
Open

JonKuqi wants to merge 7 commits into
mainfrom
249-minows-integration

Conversation

@JonKuqi

@JonKuqi JonKuqi commented Aug 25, 2026 •

Copy link
Copy Markdown
  • Migrated the D-Voting CLI, integration tests, DKG tests, and deployment configuration from MinoGRPC to MinoWS.
  • Deserialized persisted DKG participant addresses through the active Mino address factory instead of the MinoGRPC-specific factory.
  • Updated Docker and local scripts to use MinoWS multiaddresses, including dynamically generated peer IDs.

PR 43 on dela needs to be merged before merging this PR because it uses that dela commit.

Closes #249

Changes

The CLI and integration setup now create MinoWS nodes using WebSocket multiaddresses and persistent libp2p keys. The obsolete certificate exchange, join tokens, routing flags, and TLS flags have been removed.

DKG state unmarshalling now receives the address factory from the active Mino instance:

Docker and local launch configurations now use MinoWS listen and public addresses. Proxy registration reads each node's complete runtime address so the generated /p2p/<peer-id> component is preserved.

D-Voting now uses DELA revision 08f5b05544f75c702aace49e316fb9004ee8f1fe.

Also removed a duplicate registration because it was throwing errors. Go runs init() once before main, so the previous explicit call:

json.Register()

registered the same JSON engine a second time. runWithCfg() is called concurrently when CLI tests start several nodes, so the that second register produced data races in dela. The blank import "_ "github.com/c4dt/d-voting/services/dkg/pedersen/json" runs the package's init() exactly once.

Verification

go test ./cli/dvoting
go test ./services/dkg/pedersen
go test ./integration -run '^TestIntegration$' -count=1 -timeout=60s

bash scripts/run_docker.sh
bash scripts/system-tests/run_all.sh

The CLI, Pedersen DKG, integration, Docker, and system tests pass with MinoWS.

@JonKuqi JonKuqi self-assigned this Aug 25, 2026
@JonKuqi
JonKuqi requested a review from PascalinDe August 25, 2026 13:49
@JonKuqi
JonKuqi marked this pull request as ready for review August 25, 2026 13:51
@JonKuqi
JonKuqi marked this pull request as draft August 25, 2026 16:42
@JonKuqi
JonKuqi marked this pull request as ready for review August 26, 2026 15:27

@PascalinDe PascalinDe left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

requested some changes

for the rest, it looks good to me, but I think I'd like @ineiti to also have a look at it, as it is mostly his work

Comment thread scripts/local_proxies.sh Resolved
Comment thread scripts/run_docker.sh Resolved
@PascalinDe
PascalinDe requested a review from ineiti August 27, 2026 14:44
@ineiti

ineiti commented Sep 3, 2026

Copy link
Copy Markdown
Member

Oh my - I have no idea anymore. Can we have a look at this after the UK?

@PascalinDe PascalinDe mentioned this pull request Sep 14, 2026
7 tasks done
@PascalinDe PascalinDe assigned PascalinDe and unassigned JonKuqi Sep 14, 2026
@ineiti

ineiti commented Sep 17, 2026

Copy link
Copy Markdown
Member

I created a PR #260 for some of the grpc references, but there are quite a lot left in web/frontend/tests, which make me wonder if this PR still works with the frontend?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MinoWs integration

3 participants