roadmap/content/vac/updates/2024-02-26.md

217 lines
14 KiB
Markdown

---
title: "2024-02-26 Vac weekly"
tags:
- "vac-updates"
date: 2024-02-26
lastmod: 2024-02-26
draft: false
---
## Vac 2024/02/26
### vac:p2p:
- `nimlibp2p:vac:maintenance`
- Yamux simulations https://github.com/status-im/nim-libp2p/pull/1029
- Debug the stairs showed with the metrics
- It was due to a couple of error / bug:
- On nwaku a ping connection opened wasn't closed
- On yamux the timeout wasn't implemented
- The implementation + testing of the implementation showed a sneaky bug (fixed)
- `nimlibp2p:vac:webrtc-transport`
- Merged the DataChannel giant PR https://github.com/status-im/nim-webrtc/pull/4
- Maintenance on nim-mbedtls https://github.com/status-im/nim-mbedtls/
- Debugging some issues with the interaction between the clients parts of dtls and sctp https://github.com/status-im/nim-webrtc/pull/5
- `nimlibp2p:vac:gossipsub-stagger-send`
- Tested and found issues with PR and possibly more that already exist - https://github.com/status-im/nim-libp2p/pull/1015 (feat: message prioritization with immediate peer-published dispatch and queuing for other msgs)
- Experimental PR - https://github.com/status-im/nimbus-eth2/pull/5911 - to test fixes for the above. It has been deployed to https://metrics.status.im/d/pgeNfj2Wz23/nimbus-fleet-testnets?orgId=1&from=now-6h&to=now&var-instance=erigon-10.ih-eu-mda1.nimbus.holesky&var-container=beacon-node-holesky-libp2p&refresh=5s
- Check nimbus/libp2p discord channel for more info on the above.
- `nimlibp2p:vac:maintenance`
- Briefly investigate interop failing tests; Flaky: Added them to [flaky tests doc](https://www.notion.so/Flaky-Tests-0ca86939142949af8f23f8b06fb4e3c4)
### vac:tke:
- `nomos:cryptarchia-wealth-concentration-estimated-stake`
- finalizing the report about wealth concentration on Nomos (@Frederico)
- caught up with Frederico's work on wealth concentration (@Martin)
- `nomos:tdc-objectives`
- continued reading the whitepaper and filling the TDC (@Frederico)
- `codex:cdx`
- appended the CDX token interactions with the feedback from the Codex team (@Frederico)
- reviewed Codex team suggestions about data retrievability on other protocols (@Frederico)
- `waku:rln-membership:`
- caught up with Martin's work on RLN pricing (@Frederico)
- prepare for and lead the discussion on RLN pricing, follow-ups (@Martin)
- `status:SNT-staking`
- helped Martin with questions about radCAD model (@Frederico)
- reviewing Ricardo's new implementation of the staking contract (resolving the accounting issue) (@Martin)
- explore concepts and architecture for the staking module (role of relayer, vault factory) (@Martin)
- updated the radCad model to reflect latest thinking on MPs (@Martin)
- `waku:general-incentives`
- read papers suggested by Jarrad (@Martin)
### vac:dst:
- `eng-10ktool:vac:bandwidth-test`
- Set up cluster without K3s (with Wings's help) and test P2P PR 1045
- Keep working on Thanos metrics scrapping: PR: https://github.com/vacp2p/10ksim/pull/3
- Gathered detailed metrics for paper on Waku scaling
- Ran 4 simulations
- Various metrics tuning on Emerald k8s
- Completely rebuilt the Kubernetes cluster (and about 80% of the lab)
- New cluster is called Opal, the sequel to Emerald
- Uses Cilium (on top of the Multus metaplugin) for much higher network performance
- Entirely bare metal, currently 3 nodes (pending 4th node returning, happening by EOW)
- Uses the new VLAN structure, clean credentials
- Fixed an issue with Metrics still using Longhorn
- Figured out how to use the backup and restore tool Velero
- Added KubeVirt for virtual machine hosting and management inside Kubernetes
- Will make it easier for us to provision machines for other teams
- Backed by Rook-Ceph
- Many tweaks to Kubernetes, Cilium, metrics, and more - see https://www.notion.so/Opal-Kubernetes-Cluster-Lab-Rebuild-4c8472546b0d47f5b05debacf9c7ac29
- Fixed multiple major networking issues with the lab (again)
- Added the ability to multi-home k8s pods through Multus (ie: attach them to multiple networks)
- Debugged and fixed a huge issue with TLS certificate issuance through Let's Encrypt - turned out to be Cloudflare's fault (Universal SSL basically broke my LE DNS-01 challenges, hard)
- Scaled up Redis to 18 nodes (6 master, 12 replicas) for additional safety under heavy load
### vac:qa:
- `waku:test-automation-js-waku`
- Peer exchange [tests](https://github.com/waku-org/js-waku/pull/1859)(@Florin)
- Issues reported:
- https://github.com/waku-org/js-waku/issues/1858
- https://github.com/waku-org/js-waku/issues/1860
- Upgrade and test CI with [nwaku v0.25.0](https://github.com/waku-org/js-waku/pull/1861)(@Florin)
- `waku:interop-testing`
- Remove [deprecated flag](https://github.com/waku-org/waku-interop-tests/pull/18)(@Florin)
- Fixed RLN_CREDENTIALS - Waku moved to use HTTP instead of WebSocket(@Roman)
- Waku node health/reliability(@Roman)
- Keep collecting info for issues:
- https://github.com/waku-org/nwaku/issues/2369
- https://github.com/waku-org/docs.waku.org/issues/165
- `waku:test-automation-go-waku`
- Improve unit test coverage for [peermanager](https://github.com/waku-org/go-waku/pull/1035)(@Roman)
- Issues reported:
- https://github.com/waku-org/go-waku/issues/1044
- `waku:test-automation-nwaku`
- Finished Implementing Peer Exchange [tests](https://github.com/waku-org/nwaku/pull/2464)(@Alex)
- Unittest Library - [Added Feature Request for nested suites](https://github.com/status-im/nim-unittest2/issues/41)(@Alex)
- Fix imports and test related to [missing imports](https://github.com/waku-org/nwaku/pull/2467)(@Alex)
- Brief look on Connection & Peer Management(@Alex)
- Start working on Discv5 tests(@Alex)
### vac:acz:
- `rlnp2p:waku:rln-relay-v2`
- included a PoC for small trees < 255 leaves where the root can be included onchain trustlessly via a view call - https://github.com/vacp2p/rln-contract/pul
- `admin/misc`
- assisting waku research team with waku papers
- `secure-channels:waku:ethereum-chat`
- Completed a first version of the paper, including the detection a possible mitigation of lost messages.
- Update the internal Notion page.
- Prepare presentation for the Logos Research Call
- Finished the research about integration of ERC-5564 and EIP-4361(SIWE).
- Start to study about the anonymous chatting with stealth addresses.
### vac:sc::
- `status:community-contracts-token-import`
- implemented Vault.depositERC20
- https://github.com/status-im/communities-contracts/pull/53
- `status:staking-contract-v1`
- review
- fix: StakeManager migration fixes and certora rules
- [Refactor and fixes for StakeManager](https://github.com/logos-co/staking/pull/63)
- refactor(StakeManager): refactor multiplier points logic
- fix(StakeManager): properly init accs and checks init
- fix(StakeManager): check for valid migration address
- fix(StakeManager): use a correct MP formula
- [refactor(StakeManager): change MIN_LOCKUP_PERIOD to 2 weeks](https://github.com/logos-co/staking/pull/65)
- [Research and fix for division precision loss](https://github.com/logos-co/staking/pull/66)
- chore: add gas-report for all contracts
- chore(StakeManager): add test for process account and unstake
- fix(StakeManager): use OpenZeppelin Math to avoid precision loss in int divisions
- `vac:maintainance/misc`
- Foundry Template
- [implemented gas-report](https://github.com/vacp2p/foundry-template/pull/18)
- [implemented command to prepare for commits](https://github.com/vacp2p/foundry-template/pull/23)
- [research on EOL error in prettier for .json files](https://github.com/vacp2p/foundry-template/issues/21)
- Sticker Market
- [Published Sticker Types from Mainnet in Sepolia](https://github.com/status-im/sticker-market/issues/17)
- Investigated issue of ENS not working on Sepolia in Status Desktop
- https://github.com/status-im/status-desktop/issues/13697#issuecomment-1960877592
- `status:community-contracts-maintenance`
- Deployed communities contracts on OP Sepolia
- `CommunityTokenDeployer`
- https://sepolia-optimism.etherscan.io/address/0xcE2A896eEA2F585BC0C3753DC8116BbE2AbaE541#code
- `CommunityOwnerTokenRegistry`
- https://sepolia-optimism.etherscan.io/address/0xfFa8A255D905c909379859eA45B959D090DDC2d4#code
- `CommunityOwnerTokenFactory`
- https://sepolia-optimism.etherscan.io/address/0x420be6568c6e09782ceae1575495cd6c1c7ea04d#code
- `CommunityMasterTokenFactory`
- https://sepolia-optimism.etherscan.io/address/0x99F0Eeb7E9F1Da6CA9DDf77dD7810B665FD85750
- PR adding addresses to project README
- https://github.com/status-im/communities-contracts/pull/52
- Investigated Certora rule issues for `CollectiblveV1` token
- https://github.com/status-im/communities-contracts/pull/48
- `CollectibleV1` is now `CommunityERC721`
- https://github.com/status-im/communities-contracts/pull/51
- `status:community-contracts-batch-tx-ext`
- Implemented `safeBatchTransferFrom` capabilities in `BaseToken`
- https://github.com/status-im/communities-contracts/pull/45
### vac:rfc:
- `rfc-process-restructuring`
- Merge Waku specs after Hanno feedback - https://github.com/waku-org/specs/pull/1
- Worked on COSS, still in draft - https://github.com/vacp2p/rfc-index/pull/4
- `waku:core-rfc-updates`
- Worked on updating 17/WAKU-RLN-RELAY - https://github.com/vacp2p/rfc/pull/667
### vac:dr:
- `valpriv:vac:val-priv-net`
- Still refining suggested ideas. slow this week.
- `valpriv:vac:tor-push-poc`
- Merged the branch torpush and rebased but encountered several conflicts. Still testing and in progress on boarding for holesky
- `valpriv:vac:tor-push-paper`
- addressed the feedback
- `gsub-scaling:vac:gossipsub-simulation`
- Conducted tests on [[PR-1015](https://github.com/status-im/nim-libp2p/pull/1015)], [[PR-1017](https://github.com/status-im/nim-libp2p/pull/1017)], [[PR-1027](https://github.com/status-im/nim-libp2p/pull/1027)], [[PR-1028](https://github.com/status-im/nim-libp2p/pull/1028)] against different scenarios
- added notion page on large message transmissions for GossipSub https://www.notion.so/GossipSub-Improvements-Impact-of-Flood-Publishing-on-Large-Messages-9c6f15a6f1364adeade91d674ecdcb55
- `gsub-scaling:vac:gossipsub-improvements-paper`
- Worked on better message forwarding. Sorting on TxTime showed slightly improved results. Now Limiting senders to further saturate bandwidth for senders
- `zk:codex:storage-proofs-open-problems-review`
- Begin examining [Reverie](https://eprint.iacr.org/2023/1888) in terms of idea mentioned in the Discord feedback thread
- `admin/misc`
- Study RLN code for stateless proofs; this provides additional insight on how Merkle trees/Verkle trees can and should be coded better which is beneficial for Nescience notes in the long run.
### vac:nes:
- `state-separation:vac:state-separation-doc`
- Finished researching the Privacy Directed Acyclic Graph (PDAG) framework for privacy guarantees
- Started looking at monitoring issues
- Started looking at Nullifier issues to avoid linkeability
- Research joinsplit and optimistic rollups for monitoring
- Begin documents on joinsplit and monitoring
- `proofsystems:vac:benchmarks`
- Written a first expanded draft for Benchmarks research paper
- Research for table comparison
- `proofsystems:vac:benchmarks`
- prepared explanation for Halo2 GWC and SHPlonk implementations (https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#2eb24a7ce01447bebbf8f5f966aede7a and https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#26d2fc825c9845f1a0ee6288f18694ce)
- prepared explanation for Arecibo implementation (https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#4fd8570d40d14e228f4d9dc08e0c2ab1)
- Fixed various PRs comments
- Added verify benchmark for Nova Circom + number of constraints (https://github.com/vacp2p/zk-explorations/pull/25)
- Added verify benchmark for Nova Bellman + number of constraints (https://github.com/vacp2p/zk-explorations/pull/30)
- Added verify benchmark for Arecibo + number of constraints (https://github.com/vacp2p/zk-explorations/pull/29)
- Added verify benchmark for Plonky2 + number of constraints (https://github.com/vacp2p/zk-explorations/pull/26)
- Researched- `state-separation:vac:state-separation-doc`
- Finished researching the Privacy Directed Acyclic Graph (PDAG) framework for privacy guarantees
- Started looking at monitoring issues
- Started looking at Nullifier issues to avoid linkeability
- Research joinsplit and optimistic rollups for monitoring
- Begin documents on joinsplit and monitoring
- `proofsystems:vac:benchmarks`
- Written a first expanded draft for Benchmarks research paper
- Research for table comparison
- `proofsystems:vac:benchmarks`
- prepared explanation for Halo2 GWC and SHPlonk implementations (https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#2eb24a7ce01447bebbf8f5f966aede7a and https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#26d2fc825c9845f1a0ee6288f18694ce)
- prepared explanation for Arecibo implementation (https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#4fd8570d40d14e228f4d9dc08e0c2ab1)
- Fixed various PRs comments
- Added verify benchmark for Nova Circom + number of constraints (https://github.com/vacp2p/zk-explorations/pull/25)
- Added verify benchmark for Nova Bellman + number of constraints (https://github.com/vacp2p/zk-explorations/pull/30)
- Added verify benchmark for Arecibo + number of constraints (https://github.com/vacp2p/zk-explorations/pull/29)
- Added verify benchmark for Plonky2 + number of constraints (https://github.com/vacp2p/zk-explorations/pull/26)
- Researched ways to calculate halo2 constrain ways to calculate halo2 constrain