nwaku
chore: Reorganize RestApi specs for live documentation {E:REST API service node}
- achieved: Http RestAPI interface is in parity with json-rpc with even more features supported on it.
- next: Openapi specification is reorganized and online doc generated out of it. Currently under PR review. Follow up spec reorganization with rest api type reorganization. RFC changes to enhance lighpust failure response.
feat: allowing users to choose port 0 for dynamically allocated ports {enhancement}
- achieved: had over code review sessions and got feedback. Implemented improvements, attempted new approaches, fixed bugs. Most of the solution is already implemented and working.
- next: fix failed tests, add test cases and raise PR
feat: experimental incentivize store protocol {E:Basic service incentivization}
- achieved: wrote the first draft of incentivization outline
- next: discuss open question, continue structuring the document
setting up static sharding fleet for Status {E:Static sharding}
- achieved: setup a separate shard for community points of contact, and another one for 1:1/group messages
- next: investigate/fix discv5 not working when static sharding is being used.
PostgreSQL {E:2.1: Production testing of existing protocols}, {E:PostgreSQL}
- achieved:
- Testing environment prepared in
metal-01.he-eu-hel1.wakudev.misc.statusim.net
. There are two databases (Postgres and SQLite) with 5 million of random messages. - Enhanced Grafana dashboard so that we can compare timings performance throughout an histogram.
- Testing environment prepared in
- next: Carry on with the investigation to enhance the Postgres performance.
feat: provide a way to define advertised addresses {enhancement}
- achieved: implemented solution and raised PR
- next: get feedback, implement suggested improvements and close
nwaku c-bindings (NodeJS + Python) {E:NodeJS Library}
- achieved:
- Separate PR to avoid global variables: https://github.com/waku-org/nwaku/pull/2118
- Started to document the tasks tackled so far: https://www.notion.so/NWaku-cbindings-FFI-7a9ae6240cfc4caba7c7ff0bf3429a70
- next: Start creating a separate NodeJs and Python repositories, where we will create nodejs-waku and py-waku, respectively.
js-waku
Peer Management: Connection and Disconnection {E:2.1: Production testing of existing protocols}
- achieved: reached a conclusion tackling deliberate vs accidental disconnections, PRs opened to handle Filter subscriptions on disconnection/reconnections, iterative fixes on addressing multiple dial attempts for same peer, fixes around keep alive pings
- next: getting reviews & merging these PRs which should enable us to close this epic 🥳
go-waku
feat: Service peer selection on specific shards {E:1.4: Sharded peer management and discovery}
- achieved: refactor and migrate peer selection to peer manager and update lightclient API to use new options
- next: on-demand discovery if peers are not available for the shard
Add postgresql to the unit tests {test}
- achieved: Completed. Fixed only sqlite being used for creating queries.