nwaku
feat: RLN support for Nwaku-Compose {E:3.2: Basic DoS protection in production}
- achieved: added RLN flags
run_node.sh
(including the optional ones), added RLN related environment variables todocker-compose.yml
, added RLN metrics’ visualizations to Grafana and updated the README to account for the new changes. Improved implementation based on feedback. - next: test the use of optional parameters, get feedback for new version, and merge as soon as all the comments get addressed
chore: bump vendor dependencies for 0.21.0 {dependencies}
- achieved: Bumped all dependencies and prepared to
0.21.0
. We will start doing this regularly after each release.
feat: HTTP REST API: lightpush {E:REST API service node}
- achieved: Lightpush REST API endpoint merged to master
- next: Admin REST endpoint, extended health endpoint, Full swagger doc of nwaku rest API interface
feat: Service peer selection on specific shards {E:1.4: Sharded peer management and discovery}
- achieved: peer manager can filter peer by shard, filter discv5 bootstrap nodes by shard, external APIs moved out of node folder
- next: refactor APIs handlers to discover peers if none is found in peer manager with the required capability
feat: Autosharding API for (relay) subscriptions {E:1.2: Autosharding for autoscaling}
- achieved: fixed js-waku nwaku interop test
- blocker: js-waku PR not merged
chore: update resolved enr ip when using dns4-domain-name
flag {enhancement}
- achieved: added error handling and tests, received new feedback and addressed the comments
- next: get the new version reviewed and merge if approved
chore: update resolved enr ip when using dns4-domain-name
flag {enhancement}
- achieved: implemented solution that does DNS IP resolution during node bringup when no external IP is found but a DNS address is provided. Validated and tested “happy paths” of the solution, raised draft PR and got feedback about the solution
- next: discuss and define the system’s behavior on errors, implement error handling and adding tests for this feature.
nwaku c-bindings (NodeJS + Python) {E:NodeJS Library}
- achieved: Use of ‘ThreadSignalPtr’ instead of loop to handle req/resp. https://github.com/waku-org/nwaku/pull/2045
- next: Avoid the use of global variables, to enhance the thread-safeness ( see https://github.com/waku-org/nwaku/pull/1865#discussion_r1282722954 )
js-waku
Peer Exchange is supported and used by default {E:2.1: Production testing of existing protocols}
- achieved: The Peer Exchange Epic is now completed & closed
Cover Several Environments As Part of Testing {test}, {E:Comprehensive dev testing}
- achieved: improved karma testing, added testing in browser
go-waku
feat: discovery & peer management for static shards {E:1.4: Sharded peer management and discovery}
- achieved: handle dynamic topic sub/unsub and update peerMetadata.
- next: relay peer mgmt for static/auto sharding
feat: Autosharding API for req-resp protocols {E:1.2: Autosharding for autoscaling}
- achieved: Completed Filter API and lightClient changes for autosharding
Add postgresql to the unit tests {test}
- achieved: Add test for store query creation functionality, and change store test to use postgres. Add tests for postgres module.