Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RLN enabled by default #655

Closed
19 of 22 tasks
richard-ramos opened this issue Aug 18, 2023 · 9 comments
Closed
19 of 22 tasks

RLN enabled by default #655

richard-ramos opened this issue Aug 18, 2023 · 9 comments
Assignees
Labels
E:3.2: Basic DoS protection in production See https://github.com/waku-org/pm/issues/70 for details

Comments

@richard-ramos
Copy link
Member

richard-ramos commented Aug 18, 2023

Planned start date:
Due date:

Summary

RLN validation should be enabled by default for relay nodes

Acceptance Criteria

Tasks

  • Run rln-relay on all configured pubsub topics and content topics (passed in w/ --pubsub-topic)
  • Separate out bandwidth constraint validator
  • Ordered validator execution
    1. WakuMessage decoding
    2. WakuRelay
    3. WakuRlnRelay
  • Review metrics (few too many one-time metrics, like startup time etc)
  • Clear up the nullifier table (clear the table once in 10 epochs or so)
  • Health check api (/health should denote if the nwaku node is ready for use)
  • Sync from the deployment block instead of from genesis.
  • The rln feature should be available in the non-experimental context
  • Add metric to show the amout of registered memberships in the tree.
  • Rename rlnkeystore application to waku-rln-relay
  • Remove registration capability from go-waku
  • RLN DB should be aware of chain and contract address
  • Command to generate keystores
  • Add metric with the total registered memberships in the contract
  • s/flush_interval/flush_every_ms misconfiguration on rln config
  • DB should be aware of chain and contract address
  • DB dissapears (use zerokit v0.3.2)
  • Sync valid roots to metadata
  • Non deterministic sorting applied to credentials, and contract
  • Mobile support for RLN Mobile support go-zerokit-rln#5
  • C-Bindings support for RLN feat: c-bindings RLN support #732
  • Nix build support for RLN bug: nix build fails when using RLN support #731

RAID (Risks, Assumptions, Issues and Dependencies)

@richard-ramos richard-ramos added milestone Tracks a subteam milestone E:2023-rln labels Aug 18, 2023
@richard-ramos richard-ramos self-assigned this Aug 18, 2023
@richard-ramos
Copy link
Member Author

Weekly Update

  • achieved: removed registration capability from the wakunode and created a separate subcommand to do the registration
  • next: run rln-relay on all configured pubsub topics and content topics

@fryorcraken fryorcraken changed the title [Milestone] RLN enabled by default [Epic] RLN enabled by default Aug 24, 2023
@fryorcraken fryorcraken added epic Tracks a yearly team epic (only for waku-org/pm repo) and removed milestone Tracks a subteam milestone labels Aug 24, 2023
@richard-ramos
Copy link
Member Author

Weekly Update

  • achieved: run rln-relay on all configured pubsub topics and content topics, added metrics, made RLN database aware of chainID and contract address, refactored keystore.
  • next: test keystore interop with nwaku, integrate waku rln registry, and restore valid roots from DB

@richard-ramos
Copy link
Member Author

Weekly Update

  • achieved: test keystore interop with nwaku, integrate waku rln registry, and restore valid roots from DB
  • next: ordered validator execution, bandwidth validation, upgrade zerokit

@richard-ramos
Copy link
Member Author

Weekly Update

  • achieved: ordered validator execution, upgrade zerokit, append rln proofs when posting msgs in rest/rpc, clean up nullifier table, automatically use key from keystore if only a single credential is available, validate credential using onchain query
  • next: bandwidth validation, rln isReady verif in /health endpoint, subcommand to list credentials

@richard-ramos
Copy link
Member Author

richard-ramos commented Sep 12, 2023

Added waku-org/go-zerokit-rln#5 for mobile support . Might make sense to extract this to a separate epic, as mobile support is not really a priority for now

@richard-ramos
Copy link
Member Author

Added #732 since c-bindings fail to compile when RLN support is added by default

@richard-ramos
Copy link
Member Author

Added #731 since nix is failing to build go-waku when RLN support is added by default

@richard-ramos
Copy link
Member Author

Weekly Update

  • achieved: isReady verif in /health endpoint, make RLN available in service nodes and library usage by default, update docs and docker image, use zerokit 0.3.4, allow running service node with no RLN credentials
  • next: bandwidth validation, subcommand to list credentials

@chair28980
Copy link
Contributor

Closing issue per discussion with Richard the critical for launch tasks in this issue have been completed. The remaining open tasks will be added to the catch-all non-critical Epic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
E:3.2: Basic DoS protection in production See https://github.com/waku-org/pm/issues/70 for details
Projects
Archived in project
Development

No branches or pull requests

3 participants