--- title: "2024-02-05 Vac weekly" tags: - "vac-updates" date: 2024-02-05 lastmod: 2024-02-05 draft: false --- ## Vac 2024/02/05 ### vac:p2p: - `nimlibp2p:vac:webrtc-transport` - Fix a bug in `Datachannel.read` (reading the last message received instead of the first one) - Fix a bug due to an Sctp delay (set it to 0ms was the solution) - Find a bug in the conception of WebRTCStream. ReadOnce should be Length-prefixed. - try to fix it by re-writing ReadOnce, but due to the nature of this proc (inheritance issue) it doesn't work - write a RawWebRTCStream to make the length readable without issue - Fix a bug with the endianness of the datachannel protocol id - E2E Done! - `nimlibp2p:vac:gossipsub-stagger-send` - feat: make relayed messages non priority (don't use an explicit queue for priority msgs) - https://github.com/status-im/nim-libp2p/pull/1015 - feat: drop msgs to be relayed waiting for too long in the queue - https://github.com/status-im/nim-libp2p/pull/1015 - `nimlibp2p:vac:maintenance` - Investigate dependencies issues - Found possible problem/s - Lack of versioning - No major version clamping - Using #head - Temporary workaround: Clamp/Pin (to git hash) libp2p dependencies' versions - [PR](https://github.com/status-im/nim-libp2p/pull/1020) - Improve documentation [In Progress] - Building go-libp2p-daemon - Getting Started - [PR](https://github.com/status-im/nim-libp2p/pull/1021) - Merge timeout increase - Improved `checkExpiring` - Now it'll outpout an error message when it fails due to timeout - Not the most visible message ### vac:tke: - `admin/misc`: - Matty Handoff document finished and share with team on Wed (@Matty) - Team Lead Evaluation Criteria finished and share with team on Wed (@Matty) - Strengths and development areas for Frederico and Martin, shared with Corey, Daniel, and Jarrad (@Matty) - `codex:economic-analysis` - finalize all Codex notion including Dragan's comments to litepaper (@Matty) - Wednesday call with Codex team get in sync on next steps - `status:SNT-staking` - staking contract implementation becoming a priority, refresh latest progress with SC team (@Martin) - `nomos:economic-analysis` - Reading whitepaper and updating TDC (@Frederico) - Porting wealth concentration simulation code to GPU to decrease runtimes (@Frederico) - `waku:economic-analysis` - Continue Waku Network of Networks design discussion with Franck, concerns around forking (@Martin) - Research similar abstract p2p validation protocols (e.g. former Keep Network) ### vac:dst: - `eng-10ktool:vac:bandwidth-test` - Try to get a stable nim-libp2p version for simulations. Investigated with Alex about building issues with nimble. - Analized libp2p metrics, everything normal so far - call with p2p team - Scale testing for 10K project - setup go-waku experiment at scale - Successfully simulated a 2,150 node simulation and gathered some basic metrics - Modified Kubernetes to allow for more pods to allow for (in theory) scaling to 10k+ - Failed simulations at 10000 and 5000 nodes - current limits seem to be around ~4800 or so - Prometheus is a definite bottleneck - need to switch to a scaled/sharded Prometheus/***Thanos*** setup - Attempting one last simulation over the weekend at 4200 nodes - Diagnosing 10K project bottlenecks - Identified a major potential bottleneck in the form of control plane traffic going over Wireguard / large packet load over WG causing swarm collapse - will test the new theory later by re-deploying on Vac Kubernetes with a local control plane + local traffic (while still complying with infra team requirements) ### vac:qa: - `software-testing:waku:test-plans` - Sharding [test plan](https://www.notion.so/Sharding-fc4b21238cde41f3bed8c9aab016bd58)(@Florin) - `software-testing:waku:interop-testing` - Relayed messages reach recently started peer with a big [delay](https://github.com/waku-org/nwaku/issues/2388)(@Florin) - RLN registration [support and tests](https://github.com/waku-org/waku-interop-tests/pull/16)(@Roman) - `software-testing:waku:test-automation-go-waku` - Reviewed remaining work and added [summary](https://www.notion.so/57c29e9604ed400baadf5f76a8c57ea3?v=485765aa457a4961b163e94bd37b8063&pvs=4) and [approach](https://www.notion.so/Go-Waku-Unit-Testing-cfc028caf8374d8681f2005cc54a5fb5?pvs=4)(@Roman) - `software-testing:waku:test-automation-nwaku` - Clean and work with Gabriel to verify [fix](https://github.com/waku-org/nwaku/pull/2356)(@Alex) - Review lighpush fixes and [adjust unit tests](https://github.com/waku-org/nwaku/pull/2269)(@Alex) - Learned how to generate coverage report for NWaku and prepared small PR to have a [shortcut](https://github.com/waku-org/nwaku/pull/2382)(@Roman) ### vac:acz: - `rlnp2p:waku:rln-relay-v2` - rln-v1 to v2 commitment migrator: https://github.com/waku-org/waku-rln-contract/pull/11/commits/886891b57ae54e439563023dd50161fec5ee29f1 - use rln-v2 contract in nwaku: https://github.com/waku-org/nwaku/pull/2381 - update c ffi bindings and serde in nwaku: https://github.com/waku-org/nwaku/pull/2385 (issues: https://github.com/waku-org/nwaku/issues/2378 and https://github.com/waku-org/nwaku/issues/2377) - use rln-v2 in registration and membership insertion mechanism: https://github.com/waku-org/nwaku/pull/2392 (wip) - `secure-channels:waku:ethereum-chat` - RFC updating, following comments and suggestions. - Discussion of use cases for the secure messaging protocol - Search and investigate existing secure messaging apps - `zerokit:vac:maintenance` - worked on a workaround for this issue https://github.com/vacp2p/zerokit/issues/55 ### vac:sc:: - `status:snt-staking-contract-maintenance` - Review Certora work PR https://github.com/logos-co/staking/pull/47 - Working on solutions for Staking Contact issues https://notes.status.im/lNd8kcVmQEWcDYEldpl26Q ### vac:nescience: - `state-separation:vac:state-separation-doc` - Completed research on SE and DE focusing on security issues while combining both models (Moudy) - Rewrote a [full version](https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#f47efa2d1f704414b6284c4bd261228d) of state update proposal for security and privacy threats (Moudy) - Researched address hiding and signature verification and wrote a proposal for [address hiding and signature verification](https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#9ab4ba4d92914ba0a5f66235446de5d1) (Marvin) - Added a [report](https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#ff43eca4e39b4a4ea171743c691469de) about the security issue and a possible solution(salt mechanism) and investigated about the security of the SE/DE (Ugur) - `proofsystems:vac:research-existing-proof-systems` - Started looking at [Reverie whitepaper](https://eprint.iacr.org/2023/1888.pdf)and [BaseFold implementation](https://github.com/hadasz/plonkish_basefold) (Rostyslav) - `proofsystems:vac:benchmarks` - Finished working on arecibo benchmark (Rostyslav) ### vac:dr: - `gsub-scaling:vac:gossipsub-improvements-paper` - Completed message staggering in the form of weighted message queues - Its showing 10% better result than priority queuing, but Async Queue overhead still requires some work - `zk:codex:storage-proofs-open-problems-review` - Begin reviewing [Range Proof example](https://github.com/codex-storage/zk-research-artifacts/blob/master/notes/range-check/range_check.pdf) ### vac:rfc: - `rfc-process-restructuring` - worked on rfc-index adding rest of rfc, fixing links, and chaging headers - https://github.com/vacp2p/rfc-index/pull/1 - worked on waku/specs adding rfcs - https://github.com/waku-org/specs/tree/waku-RFC