diff --git a/content/.gitkeep b/content/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/acid/index.md b/content/acid/index.md deleted file mode 100644 index c3e3fee8f..000000000 --- a/content/acid/index.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Comms Roadmap Overview" -tags: -- "overview" ---- -Welcome to the Comms Roadmap Overview -- [Milestones](acid/milestones-overview.md) -- [weekly updates](tags/acid-updates) \ No newline at end of file diff --git a/content/acid/milestones-overview.md b/content/acid/milestones-overview.md deleted file mode 100644 index 23191cba2..000000000 --- a/content/acid/milestones-overview.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: "Comms Milestones Overview" -tags: -- "milestones" -date: 2023-08-17 -lastmod: 2023-08-17 ---- - -- [Comms Roadmap](https://www.notion.so/eb0629444f0a431b85f79c569e1ca91b?v=76acbc1631d4479cbcac04eb08138c19) -- [Comms Projects](https://www.notion.so/b9a44ea08d2a4d2aaa9e51c19b476451?v=f4f6184e49854fe98d61ade0bf02200d) -- [Comms planner deadlines](https://www.notion.so/2585646d01b24b5fbc79150e1aa92347?v=feae1d82810849169b06a12c849d8088) \ No newline at end of file diff --git a/content/acid/updates/2023-08-02.md b/content/acid/updates/2023-08-02.md deleted file mode 100644 index a56449323..000000000 --- a/content/acid/updates/2023-08-02.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "2023-08-02 Acid weekly" -tags: - - "acid-updates" -date: 2023-08-03 -lastmod: 2023-08-03 -draft: false ---- - -## Leads roundup - acid - -**Al / Comms** - -- Status app relaunch comms campaign plan in the works. Approx. date for launch 31.08. -- Logos comms + growth plan post launch is next up TBD. -- Will be waiting for specs for data room, raise etc. -- Hires: split the role for content studio to be more realistic in getting top level talent. - -**Matt / Copy** - -- Initiative updating old documentation like CC guide to reflect broader scope of BUs -- Brand guidelines/ modes of presentation are in process -- Wikipedia entry on network states and virtual states is live on - -**Eddy / Digital Comms** - -- Logos Discord will be completed by EOD. -- Codex Discord will be done tomorrow. - - LPE rollout plan, currently working on it, will be ready EOW -- Podcast rollout needs some -- Overarching BU plan will be ready in next couple of weeks as things on top have taken priority. - -**Amir / Studio** - -- Started execution of LPE for new requirements, broken down in smaller deliveries. Looking to have it working and live by EOM. -- Hires: still looking for 3 positions with main focus on developer side. - -**Jonny / Podcast** - -- Podcast timelines are being set. In production right now. Nick delivered graphics for HiO but we need a full pack. -- First HiO episode is in the works. Will be ready in 2 weeks to fit in the rollout of the LPE. - -**Louisa / Events** - -- Global strategy paper for wider comms plan. -- Template for processes and executions when preparing events. -- Decision made with Carl to move Network State event to November in satellite of other events. Looking into ETH Lisbon / Staking Summit etc. - - Seoul Q4 hackathon is already in the works. Needs bounty planning. \ No newline at end of file diff --git a/content/acid/updates/2023-08-09.md b/content/acid/updates/2023-08-09.md deleted file mode 100644 index ce10a2aa9..000000000 --- a/content/acid/updates/2023-08-09.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: "2023-08-09 Acid weekly" -tags: - - "acid-updates" -date: 2023-08-09 -lastmod: 2023-08-09 -draft: false ---- - -## **Top level priorities:** - -Logos Growth Plan -Status Relaunch -Launch of LPE -Podcasts (Target: Every week one podcast out) -Hiring: TD studio and DC studio roles - -## **Movement Building:** - -- Logos collective comms plan skeleton ready - will be applied for all BUs as next step -- Goal is to have plan + overview to set realistic KPIs and expectations -- Discord Server update on various views -- Status relaunch comms plan is ready for input from John et al. -- Reach out to BUs for needs and deliverables - -## **TD Studio** - -Full focus on LPE: -- On track, target of end of august -- review of options, more diverse landscape of content -- Episodes page proposals -- Players in progress -- refactoring from prev code base -- structure of content ready in GDrive - -## **Copy** - -- Content around LPE -- Content for podcast launches -- Status launch - content requirements to receive -- Organization of doc sites review -- TBD what type of content and how the generation workflows will look like - -## **Podcast** - -- Good state in editing and producing the shows -- First interview edited end to end with XMTP is ready. 2 weeks with social assets and all included. -- LSP is looking at having 2 months of content ready to launch with the sessions that have been recorded. -- 3 recorded for HIO, motion graphics in progress -- First E2E podcast ready in 2 weeks for LPE -- LSP is looking at having 2 months of content ready to launch with the sessions that have been recorded. - -## **DC Studio** - -- Brand guidelines for HiO are ready and set. Thanks `Shmeda`! -- Logos State branding assets are being developed -- Presentation templates update - -## **Events** - -- Network State event probably in Istanbul in November re: Devconnect will confirm shortly. -- Program elements and speakers are top priority -- Hackathon in Seoul in Q1 2024 - late Febuary probably -- Jarrad will be speaking at HCPP and EthRome -- Global event strategy written and in review -- Lou presented social media and event KPIs on Paris event - -## **CRM & Marketing tool** - -- Get feedback from stakeholders and users -- PM implementation to be planned (+- 3 month time TBD) with working group -- LPE KPI: Collecting email addresses of relevant people -- Careful on how we manage and use data, important for BizDev -- Careful on which segments of the project to manage using the CRM as it can be very off brand \ No newline at end of file diff --git a/content/acid/updates/2023-08-29.md b/content/acid/updates/2023-08-29.md deleted file mode 100644 index 76c141106..000000000 --- a/content/acid/updates/2023-08-29.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -title: 2023-08-29 Comms weekly -tags: - - acid-updates -date: 2023-08-29 -lastmod: 2023-09-04 -draft: false ---- -## Leads roundup - acid - -### **Al - Comms** - -- LPE & Podcast are almost there. Content needs to be polished and reviewed by Carl and Jarrad. Might have an impact on the deadline but we start testing phase tomorrow. -- Plan for marketing and promotion of the podcast needs a bit more work. Teasers for Snowden will be released. Next episode drops next week. -- Status app comms campaign. We are aligned with John and Status team. Needs pre-launch work for content and pending some items and confirmations from John. -- Digital designer will be joining us soon for Content team. We are still looking for a Motion designer. -- Townhall: Dmitry and Santiago will be talking re: Codex + Logos culture. - -### **Amir - Tech and Design** - -- LPE is ready. Content is being populated. Soft launch is 30/08. Then stress test, debug, etc. -- Notion page is up and running for listing errors, bugs and feedback. Amir will move to GitHub https://www.notion.so/f9fef49cc74c46b19ceb9c14a2003062?v=3eb563f28fc448bd836d16da1272d620&pvs=4 -- Wiki: codebase will be ready in a day or two, then once infra team deploys we have kick off meeting for structure, content etc. Then design team can redesign based on what we need. Timeframe: end of September - -### **Matt - Copy** - -- Content from the LPE is getting there, pending review as mentioned above. -- Cleaning up the documentation sites etc. -- Status comms campaign is coming so articles in planning will be drafted and - -### **Christian - Podcast** - -- Podcast release plan is being solidified and reviewed https://docs.google.com/document/d/1ppSb_Fkdw3iirwzlEgTvYpkq3n00ds4Xz5KE3mgqA-E/edit?usp=sharing -- Review process is set up and open for feedback. - -### **Nick - Content** - -- Decks for townhall are coming and will be ready for next week. -- Images for LPE content is being vetted. We are looking to establish a style for the first article to set the tone for the following. This is holding it back a bit but once it is set we can move it from there. - -### **Louisa - Events** - -- By the end of next week we will launch global event strategy post-review. Includes templates and structures for the future. -- Network State Event needs to lock down the potential event speakers, how to communicate with them and basically get a review. Nimbus and Waku and Codex will be there. We need to fix the program and agree on it. Venues shortlisted by the end of the week. -- 8 agencies have been briefed as event organisers. Needs to be locked and set by end of week. -- ETH Rome, Logos and Waku are sponsoring and Jarrad is talking. Paralelni Polis is happening late September. Working on the details to hit production deadlines. -- Beginning work on hacakthon in Seoul end of February 2024. - -### **Movement Building - Santiago** - -- Comms plans LPE, Status and Logos Community plans are on good track. Carl reviewed and asked for 90 day plans plus timelines. -- Logos community structure is being developed to guide people through an engagement/leadership ladder that serves our purpose. First community coming in will be our testing phase pre-growth. -- LPE launch plan is being reviewed and has a budget verbally approved to push via paid ads. Focus mostly on Snowden on episode as a roundabout way to support awareness for Logos. -- BU Plans, pretty much done, will send them to Al asap for review. diff --git a/content/acid/updates/2023-09-21.md b/content/acid/updates/2023-09-21.md deleted file mode 100644 index 229b4f1a4..000000000 --- a/content/acid/updates/2023-09-21.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -tags: - - acid-updates -title: 2023-09-18 Acid Update ---- -## **Overview/Priorities** -- Al departure - - Short term - We need to stabilise, Al brought a lot of value, we may have to step up a little bit, will meet with Carl and Jarrad weekly. - - Long term - positive changes internally, open culture, open feedback, etc. - - Townhalls - Christian will be point of contact. With Santiago to support. The idea is plan 3-6 months in advance. - - Comms strategy - Adjusting it to be more strategic and concise. with focus on Brand Awareness & BU Needs, measuring Impact & clear timeline. - - Virtual office - Available for anyone to join Santiago and Ned to discuss, ask questions, hangout. - - To team leads: please implement feedback mechanisms that are safe for people. Open up first about shortcomings and promote healthy criticism and exchange. Copy the After Action Review model if necessary for each project delivery and a regular one at your discretion. We want to be better together and trust each other. It is a marker of a successful organisation. - -## **Amir - Tech & Design** -- Improvements on LPE. RSS feed, Discord bot integration, X threads can be previewed -- Integration of Odoo for email client is with infra. -- Logos System Design (LSD) is being optimised. - -## **Matt / Sterlin - Copy** -- Plethora of words to the LPE. Focus there. Make sure the content looks and feels good. Sterlin feels writing looks good in relation with other similar projects. -- Matt and Sterlin are working on the Status blog posts for the upcoming launch. -- Amelia is working on the BU updates. -- Rick is the social media master, making really good progress on setting up a solid base and communication with the BUs in regards to their needs. - -## **Nick - Digital Content Studio** -- New meeting with Jarrad to get his involvement in the day to day things, he has clarity re: guests, shifting content and style. Objective is to have conversations that inform our thinking about network states, governance, etc. Cater content for Jarrad to build his skill as a speaker and host. -- Production value is an important improvement point. -- Looking for more people to join as motion designer for video help. -- Swag for ETH Rome needs feedback but is on it’s way and on time. -- Podcast: we have a solid buffer of interviews for HiO and Logos that allows us to have time for strategic changes. -- Podcast: New stream/recording subscription needs to be approved by someone else to move forward. - -## **Santiago - Movement Building** -- Comms strategies - overall, as a master guideline, we should be creating a movement around network states and not a network state, as a key player and a thought leader. From people developing privacy tech, charter cities, etc. To invest all our resources to creating spaces (physical x digital) for the different parties. -- Jarrad: We want authentic organic interaction and conversations like a learning community. -- Nick feedback : To approach which conversations/guests are more appropriately placed in which formats, because production time need to be mindful (podcast, twitter space, etc.) -- LPE launch awaits Comms strategy realignment. - -## **Louisa - Events** -- Holding back on global guidelines and event strategy once comms strategy is in place. -- Jarrad is speaking at POW and HCCP. Decks coming ASAP. -- ETH Rome: investing in bounties, smaller meetups are coming. We need booth, merch, swag design this week. Railgun collab with Waku. -- Istanbul: Just some alignment needed re: names and others. Vac, Nimbus and Waku will be there, think about how to overlay design work. \ No newline at end of file diff --git a/content/acid/updates/2023-10-03.md b/content/acid/updates/2023-10-03.md deleted file mode 100644 index 611ffec90..000000000 --- a/content/acid/updates/2023-10-03.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: 2023-10-10 Comms weekly -tags: - - acid-updates -date: 2023-10-03 -lastmod: 2023-10-10 -draft: false -description: Weekly update of Comms ---- -## `acid` ---- - -### Overview/Priorities -- Comments from the BUs about blockers and miscommunications - Reevaluation of our comms strategy: BUs are responsible for DevRel, BD, and technical content. We’re responsible for QC of outgoing content (wordsmiths, video editing, and packaging) and non-technical content. This will be communicated with them and consolidated along with the strategy asap. -- New Mantra: Brand awareness and Learning Communities, which are both measurable by proxy. This means we focus more on performance and growth KPIs and reporting these clearly to C/J. -- With clear success metrics in place + costs and resources used we can finally focus on optimise our efforts and use it as a way to guide conversations about prioritising requests. This includes things like revisiting the creation of swag for each event etc. -- New champions model for each BU. https://miro.com/app/board/uXjVPOFj6t8=/. We have an account manager/ implement, test it and iterate as soon as possible - -### Amir - Tech & Design -- Logos System Design new version (design) is done. Development continue with Joao. Will move on to documentation. -- LPE project is done. Optimising the scoring system for the search pending a lot of content. V1 is officially done. Renamed to *Network State Press* -- Ihor working on sketches and directing of *Institute of Free Tech*. Will share soon. -- BDP - brand design portal, we designed and managed the dev before but now on hold. For now focus on Brand Guidelines in Docusauraus for BUs. - -### Nick - Digital Content Studio -- Presentations, swag work with Veronika & Video for events. -- Jonny has presented a few options for the podcast - -### Christian - Podcast -- Open to doing Twitter spaces, in another category to keep it more streamlined and controlled. He wants interactive discussions, open quesitons, brainstorming etc. -- Currently QC of Snowden -- No new interviews, just doing checks of Ameen, Baylina and Assange. Will have it ready -- Jarrad will present the townhall - -### Matt - Copy -- Status articles - Sterlin and Matt. -- BU Docs sites - Amelia. - good to go. -- Mode of presentation guidelines (part of brand guidelines) for BUs - by Matt. -- Develp site for Nimbus - Rick -- IFT landing page - Rick -- Collectively, series of articles about beginner’s guide to Network States. - -### Santiago - Movement Building -- Focusing on brand awareness and growth - we will set up reporting structures for Carl and Jarrad that are numbers based in relation to cost effectiveness. -- Odoo Email tool is with infra - configuration needed of the external SMTP server. -- Finding a PR moments for the raise. -- Next week and a half will be focused on updating the Logos server to have a proper onboarding strategy to optimise for a learning community experience. Will meet with Eddy and Jen to do this. Jen is currently updated all the all the Discord servers. - -### Louisa - Events -- POW and HCCP done - challenge not enough brand awareness -- Metrics and dashboards to get a clear impact on KPIs related to events. - -### J&F - Project Management -- Assessment for workspace, work/information flow and dashboard optimization intra and inter teams and projects. -- Organize around BUs and content pipelines -- Tools assessment \ No newline at end of file diff --git a/content/codex/milestones-overview.md b/content/codex/milestones-overview.md deleted file mode 100644 index 3c56f5760..000000000 --- a/content/codex/milestones-overview.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Codex Milestones Overview" -date: "2023-08-07" -lastmod: "2023-08-07" -draft: false -tags: -- "milestones-overview" ---- - -## Milestones -- [Zenhub Tracker](https://app.zenhub.com/workspaces/engineering-62cee4c7a335690012f826fa/roadmap) -- [Miro Tracker](https://miro.com/app/board/uXjVNZ03E-c=/?share_link_id=987528411803) \ No newline at end of file diff --git a/content/codex/monthly-reports/2023-sept.md b/content/codex/monthly-reports/2023-sept.md deleted file mode 100644 index 8673e2a19..000000000 --- a/content/codex/monthly-reports/2023-sept.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: 2023 September Codex Monthly Report -draft: false -lastmod: 2023-09-18 -tags: - - monthly-report - - codex ---- - -## Executive Summary -September updates for the Codex project were main focused on the ongoing research and analysis of the proofing schemes and their impact on the overall architecture and network economy. - - -## Key Updates -### Personnel -A new Business Development (BD) job description [was posted](https://jobs.status.im/?gh_jid=5329400) and candidates are currently being interviewed. This role is expected to help facilitate strategy around the much needed partnerships for Codex and liaise with the other BD related resources we have within Logos to ensure efficient communications. - -### Milestones -The Codex team is broken up into 5 sections, and the weekly reports give details on how each of them have performed. Currently the Milestone definitions are not in line with this reporting process and will be worked on in the subsequent month. The teams are broken up into the following sections: -- `Client` -- `Infra` -- `Marketplace` -- `Research` -- `DAS` - -Below is summary of key updates to these sections over the month of September 2023 - -#### Client -The client continues to push towards Milestone 1.3: Codex v1.0 - Katana, which is slotted to be completed by the end of the year. Significant work has been done on merkelization which is required in order to integrate the proving system, and can be followed in this [working branch](https://github.com/codex-storage/nim-codex/compare/master...sending-blocks-with-proofs-over-the-network). - -The Block Exchange protocol got some attention and refinement. Notes on the associated thoughts can be found in these two writeups: -- [Block Discovery Problem](https://rpubs.com/giuliano_mega/1067876) -- [Codex Swarm Overlays](https://rpubs.com/giuliano_mega/1082104) - -In an effort to focus on the critical development path, this work is paused in lieu of attention on the distributed systems testing work. - -Progress was made on the ability for Codex to manage asynchronous and threaded disk IO. In the process of doing this work, a bug within Nim's `SharedPtr` was [discovered](https://github.com/nim-lang/threading/issues/45) and [fixed](https://github.com/nim-lang/threading/pull/46). - -#### Infra -A [Grafana](https://grafana.dist-tests.codex.storage/) and [Kibana](https://kibana.dist-tests.codex.storage/) instance were deployed in order to facilitate the various testing being done. - -#### Marketplace -In order to alleviate a concurrency issue with Data Availabilities in the contract, a [Reservation System](https://github.com/codex-storage/nim-codex/pull/535) has been proposed and worked on. This removes the previous constraint that current downloads was limited by the number of Availabilities. - -#### Research -The [Codex Whitepaper v0.1](https://docs.google.com/document/d/1LCy23m90IHf32aUVhRT4r4772w1BfVcSLaJ0z9VTw9A/edit#heading=h.qs3bayckj5u4) was drafted and scheduled for release in October 2023. It is currently under review and improving based on feedback. - -There has been a large discussion this month around Erasure Coding (EC) for sampling. An [analysis](https://github.com/codex-storage/zk-research-artifacts/blob/master/sampling/sampling.pdf)was performed which looked at the various effects Erasure Coding schemes have on the sampling process and associated data guarantees. A quote of the conclusion on parameter choices is below: - -> [!QUOTE] -> - we cannot have a small slot size, because that would mean too many proofs by a node (≈ 1 Tb seems to be a minimum) -> - we cannot have a too small block size, because the Merkle tree of the commitments will take too much space (say a minimum of 1024 bytes) -> - we cannot have a too big “checked sample” size, because we cannot do proofs for large amount of data (say a maximum of 65536 bytes) -> - we cannot have too much sampling checks per slot, because we cannot do proofs for many samples (depends on the block size and SNARK tech) -> - we probably want as big N, K parameters as possible, but actual implementations have limit - -A short review of the [Interleaving Schemes for Multidimensional Cluster Errors](https://ieeexplore.ieee.org/abstract/document/661516) was performed [here](https://hackmd.io/DxJzAuTZROulBhPWqScmCg?view) and some general notes on Erasure Coding as it pertains to Codex was written up [here](https://hackmd.io/kxSF8wjPS3arDFcqFJrNDw). Much of these thoughts is being captured in the Erasure Coding Proofing document [here](https://github.com/codex-storage/codex-research/blob/80a88c19989f5095b71db306393fc030df278673/design/proof-erasure-coding.md). The conclusion section (at time of writing) is copied here for convenience: - -> [!QUOTE] -> It is likely that with the current state of the art in SNARK design and erasure coding implementations we can only support slot sizes up to 4GB. There are two design directions that allow an increase of slot size. One is to extend or implement an erasure coding implementation to use a larger field size. The other is to use existing erasure coding implementation in a multi-dimensional setting. -> ->Two concrete options are: -> ->1. Erasure code with a field size that allows for 2^28 shards. Check 20 shards per proof. For 1TB this leads to shards of 4KB. This means the SNARK needs to hash 80KB plus the Merkle paths for a storage proof. Requires custom implementation of Reed-Solomon, and requires at least 1 GB of memory while performing erasure coding. ->2. Erasure code with a field size of 2^16 in two dimensions. Check 160 shards per proof. For 1TB this leads to a shards of 256 bytes. This means that the SNARK needs to hash 40KB plus the Merkle paths for a storage proof. We can use the leopard library for erasure coding and keep memory requirements for erasure coding to a negligable level. - -It appears as though the team is preferring to go with the multi-dimensional approach to EC. -#### DAS -Work continues on the DAS research in coordination with the Ethereum Foundation (EF). As a result of SBC, a blog post was written by the EF that discussed a forward thinking proposal for[ _PeerDAS - a simpler DAS approach using battle-tested p2p components_](https://ethresear.ch/t/peerdas-a-simpler-das-approach-using-battle-tested-p2p-components/16541) which the team has contributed to (referenced inside). Conversations of relevancy continue. - -A Codex Blog post [was published](https://blog.codex.storage/big-blocks-on-mainnet/) discussing two by-products of the DAS research: the characterization of big block diffusion latency on the existing Ethereum Mainnet and the existence of big organic blocks on Ethereum Mainnet and its implications. The conclusion is quoted below: - ->[!QUOTE] ->We have discovered a large number of big blocks (>250 KB) that occur organically every day in the Ethereum Mainnet. We have measured the propagation time of those blocks in three different world regions and compared their latency based on geographical location as well as block size. We have analysed how these propagation differences are reflected in the five CL clients separately, as they have different ways of reporting blocks. The empirical results measured in Ethereum Mainnet and presented in this work give us the first clear idea of how block propagation times might look when EIP-4844 is deployed, and 1 MB blocks become the standard and not the exception. -> ->In the future, we plan to continue with these block propagation measurements and monitor the behaviour of big blocks in the Ethereum network. Additionally, we want to help different CL clients harmonise their event recording and publication systems in order to be able to compare CL clients between them. - -Discussions with Felix Lange began around some fixes for `Discv5`. - -### Other -A [Codex YouTube channel](https://www.youtube.com/@CodexStorage) has been setup and many tutorial videos and conference talks were uploaded. Go like and subscribe! -## Perceived Changes in Project Risk -In an effort to meet the MVP launch by the end of the year, significant resources have been diverted to engineering efforts. Jessie has taken on more responsibility in the administration and project management duties while Dmitriy has started to focus more on the research and engineering needs - -The ongoing research around the Data Availability Proof system still has potential to have drastic changes to the overall architecture of the system and associated resource costs of the various participants within the Codex Network. It is unclear how "locked in" parts of the system are that are included in the MVP launch. - -## Future Plans - -### Insight -Because of the mismatch of weekly updates with Milestone definitions, it is difficult to assess the impact of any given update. Next month should have all milestone definitions within this site and a reporting structure that is more intuitively associated with it. It has been noted that the current structure makes it difficult to track cross-team work which the changes next month hope to fix. - -A `Logos Collaborations` section will be included next month to highlight differences in alignment with the Logos Collective as well as cross project collaboration updates. - -The reporting process has missed a lot of work around the network simulation and modeling of Codex, which we expect to be corrected by next month by previously mentioned actions. - -Depending on the uptake and viability of the [Waku reporting process](https://github.com/waku-org/pm) to other projects, then a myriad of quantitative measures will be included in the next monthly report. -### Project -NEED INPUT HERE - -## Sources and Useful Links -- [Zenhub tracker](https://app.zenhub.com/workspaces/engineering-62cee4c7a335690012f826fa/roadmap) - mapping of milestones -> epics -> issues -- [May 2023 - Codex Project Status Report](https://docs.google.com/spreadsheets/d/1ejNnnBPeHqyJBqPfpZyfNGYCV10ae2pvc1mUQm2vOtU/edit#gid=1180662520) - list of risks and details on the milestones - - -Weekly Reports -- [[2023-09-15]] -- [[content/codex/updates/2023-09-29|2023-09-29]] \ No newline at end of file diff --git a/content/codex/overview.md b/content/codex/overview.md deleted file mode 100644 index 62af43321..000000000 --- a/content/codex/overview.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "Codex Roadmap Overview" -tags: -- "overview" ---- -Welcome to the Codex Roadmap Overview -- [[codex/monthly-reports/2023-sept|2023 September Report]] -- [Milestones](codex/milestones-overview.md) -- [weekly updates](tags/codex-updates) \ No newline at end of file diff --git a/content/codex/updates/2023-07-21.md b/content/codex/updates/2023-07-21.md deleted file mode 100644 index 545d04df2..000000000 --- a/content/codex/updates/2023-07-21.md +++ /dev/null @@ -1,319 +0,0 @@ ---- -title: "2023-07-21 Codex weekly" -tags: - - "codex-updates" -date: 2023-07-21 -lastmod: 2023-08-03 -draft: false ---- - -## Codex update 07/12/2023 to 07/21/2023 - -Overall we continue working in various directions, distributed testing, marketplace, p2p client, research, etc... - -Our main milestone is to have a fully functional testnet with the marketplace and durability guarantees deployed by end of year. A lot of grunt work is being done to make that possible. Progress is steady, but there are lots of stabilization and testing & infra related work going on. - -We're also onboarding several new members to the team (4 to be precise), this will ultimately accelerate our progress, but it requires some upfront investment from some of the more experienced team members. - -### DevOps/Infrastructure: - -- Adopted nim-codex Docker builds for Dist Tests. -- Ordered Dedicated node on Hetzner. -- Configured Hetzner StorageBox for local backup on Dedicated server. -- Configured new Logs shipper and Grafana in Dist-Tests cluster. -- Created Geth and Prometheus Docker images for Dist-Tests. -- Created a separate codex-contracts-eth Docker image for Dist-Tests. -- Set up Ingress Controller in Dist-Tests cluster. - -### Testing: - -- Set up deployer to gather metrics. -- Debugging and identifying potential deadlock in the Codex client. -- Added metrics, built image, and ran tests. -- Updated dist-test log for Kibana compatibility. -- Ran dist-tests on a new master image. -- Debugging continuous tests. - -### Development: - -- Worked on codex-dht nimble updates and fixing key format issue. -- Updated CI and split Windows CI tests to run on two CI machines. -- Continued updating dependencies in codex-dht. -- Fixed decoding large manifests ([PR #479](https://github.com/codex-storage/nim-codex/pull/497)). -- Explored the existing implementation of NAT Traversal techniques in `nim-libp2p`. - -### Research - -- Exploring additional directions for remote verification techniques and the interplay of different encoding approaches and cryptographic primitives - - https://eprint.iacr.org/2021/1500.pdf - - https://dankradfeist.de/ethereum/2021/06/18/pcs-multiproofs.html - - https://eprint.iacr.org/2021/1544.pdf -- Onboarding Balázs as our ZK researcher/engineer -- Continued research in DAS related topics - - Running simulation on newly setup infrastructure -- Devised a new direction to reduce metadata overhead and enable remote verification https://github.com/codex-storage/codex-research/blob/master/design/metadata-overhead.md -- Looked into NAT Traversal ([issue #166](https://github.com/codex-storage/nim-codex/issues/166)). - -### Cross-functional (Combination of DevOps/Testing/Development): - -- Fixed discovery related issues. -- Planned Codex Demo update for the Logos event and prepared environment for the demo. -- Described requirements for Dist Tests logs format. -- Configured new Logs shipper and Grafana in Dist-Tests cluster. -- Dist Tests logs adoption requirements - Updated log format for Kibana compatibility. -- Hetzner Dedicated server was configured. -- Set up Hetzner StorageBox for local backup on Dedicated server. -- Configured new Logs shipper in Dist-Tests cluster. -- Setup Grafana in Dist-Tests cluster. -- Created a separate codex-contracts-eth Docker image for Dist-Tests. -- Setup Ingress Controller in Dist-Tests cluster. - ---- - -#### Conversations -1. zk_id _—_ 07/24/2023 11:59 AM -> -> We've explored VDI for rollups ourselves in the last week, curious to know your thoughts -2. dryajov _—_ 07/25/2023 1:28 PM -> -> It depends on what you mean, from a high level (A)VID is probably the closest thing to DAS in academic research, in fact DAS is probably either a subset or a superset of VID, so it's definitely worth digging into. But I'm not sure what exactly you're interested in, in the context of rollups... -1. zk_id _—_ 07/25/2023 3:28 PM - - The part of the rollups seems to be the base for choosing proofs that scale linearly with the amount of nodes (which makes it impractical for large numbers of nodes). The protocol is very simple, and would only need to instead provide constant proofs with the Kate commitments (at the cost of large computational resources is my understanding). This was at least the rationale that I get from reading the paper and the conversation with Bunz, one of the founders of the Espresso shared sequencer (which is where I found the first reference to this paper). I guess my main open question is why would you do the sampling if you can do VID in the context of blockchains as well. With the proofs of dispersal on-chain, you wouldn't need to do that for the agreement of the dispersal. You still would need the sampling for the light clients though, of course. - -2. dryajov _—_ 07/25/2023 8:31 PM - - > I guess my main open question is why would you do the sampling if you can do VID in the context of blockchains as well. With the proofs of dispersal on-chain, you wouldn't need to do that for the agreement of the dispersal. - - Yeah, great question. What follows is strictly IMO, as I haven't seen this formally contrasted anywhere, so my reasoning can be wrong in subtle ways. - - - (A)VID - **dispersing** and storing data in a verifiable manner - - Sampling - verifying already **dispersed** data - - tl;dr Sampling allows light nodes to protect against dishonest majority attacks. In other words, a light node cannot be tricked to follow an incorrect chain by a dishonest validator majority that withholds data. More details are here - [https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html](https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html "https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html") ------------- First, DAS implies (A)VID, as there is an initial phase where data is distributed to some subset of nodes. Moreover, these nodes, usually the validators, attest that they received the data and that it is correct. If a majority of validators accepts, then the block is considered correct, otherwise it is rejected. This is the verifiable dispersal part. But what if the majority of validators are dishonest? Can you prevent them from tricking the rest of the network from following the chain? - - Dankrad Feist - - [Data availability checks](https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html) - - Primer on data availability checks - -3. _[_8:31 PM_]_ - - ## Dealing with dishonest majorities - - This is easy if all the data is downloaded by all nodes all the time, but we're trying to avoid just that. But lets assume, for the sake of the argument, that there are full nodes in the network that download all the data and are able to construct fraud proofs for missing data, can this mitigate the problem? It turns out that it can't, because proving data (un)availability isn't a directly attributable fault - in other words, you can observe/detect it but there is no way you can prove it to the rest of the network reliably. More details here [https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding](https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding "https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding") So, if there isn't much that can be done by detecting that a block isn't available, what good is it for? Well nodes can still avoid following the unavailable chain and thus be tricked by a dishonest majority. However, simply attesting that data has been publishing is not enough to prevent a dishonest majority from attacking the network. (edited) - -4. dryajov _—_ 07/25/2023 9:06 PM - - To complement, the relevant quote from [https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding](https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding "https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding"), is: - - > Here, fraud proofs are not a solution, because not publishing data is not a uniquely attributable fault - in any scheme where a node ("fisherman") has the ability to "raise the alarm" about some piece of data not being available, if the publisher then publishes the remaining data, all nodes who were not paying attention to that specific piece of data at that exact time cannot determine whether it was the publisher that was maliciously withholding data or whether it was the fisherman that was maliciously making a false alarm. - - The relevant quote from from [https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html](https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html "https://dankradfeist.de/ethereum/2019/12/20/data-availability-checks.html"), is: - - > There is one gap in the solution of using fraud proofs to protect light clients from incorrect state transitions: What if a consensus supermajority has signed a block header, but will not publish some of the data (in particular, it could be fraudulent transactions that they will publish later to trick someone into accepting printed/stolen money)? Honest full nodes, obviously, will not follow this chain, as they can’t download the data. But light clients will not know that the data is not available since they don’t try to download the data, only the header. So we are in a situation where the honest full nodes know that something fishy is going on, but they have no means of alerting the light clients, as they are missing the piece of data that might be needed to create a fraud proof. - - Both articles are a bit old, but the intuitions still hold. - - -July 26, 2023 - -6. zk_id _—_ 07/26/2023 10:42 AM - - Thanks a ton @dryajov ! We are on the same page. TBH it took me a while to get to this point, as it's not an intuitive problem at first. The relationship between the VID and the DAS, and what each is for is crucial for us, btw. Your writing here and your references give us the confidence that we understand the problem and are equipped to evaluate the different solutions. Deeply appreciate that you took the time to write this, and is very valuable. - -7. _[_10:45 AM_]_ - - The dishonest majority is critical scenario for Nomos (essential part of the whole sovereignty narrative), and generally not considered by most blockchain designs - -8. zk_id - - Thanks a ton @dryajov ! We are on the same page. TBH it took me a while to get to this point, as it's not an intuitive problem at first. The relationship between the VID and the DAS, and what each is for is crucial for us, btw. Your writing here and your references give us the confidence that we understand the problem and are equipped to evaluate the different solutions. Deeply appreciate that you took the time to write this, and is very valuable. - - ### dryajov _—_ 07/26/2023 4:42 PM - - Great! Glad to help anytime - -9. zk_id - - The dishonest majority is critical scenario for Nomos (essential part of the whole sovereignty narrative), and generally not considered by most blockchain designs - - dryajov _—_ 07/26/2023 4:43 PM - - Yes, I'd argue it is crucial in a network with distributed validation, where all nodes are either fully light or partially light nodes. - -10. _[_4:46 PM_]_ - - Btw, there is probably more we can share/compare notes on in this problem space, we're looking at similar things, perhaps from a slightly different perspective in Codex's case, but the work done on DAS with the EF directly is probably very relevant for you as well - - -July 27, 2023 - -12. zk_id _—_ 07/27/2023 3:05 AM - - I would love to. Do you have those notes somewhere? - -13. zk_id _—_ 07/27/2023 4:01 AM - - all the links you have, anything, would be useful - -14. zk_id - - I would love to. Do you have those notes somewhere? - - dryajov _—_ 07/27/2023 4:50 PM - - A bit scattered all over the place, mainly from @Leobago and @cskiraly @cskiraly has a draft paper somewhere - - -July 28, 2023 - -16. zk_id _—_ 07/28/2023 5:47 AM - - Would love to see anything that is possible - -17. _[_5:47 AM_]_ - - Our setting is much simpler, but any progress that you make (specifically in the computational cost of the polynomial commitments or alternative proofs) would be really useful for us - -18. zk_id - - Our setting is much simpler, but any progress that you make (specifically in the computational cost of the polynomial commitments or alternative proofs) would be really useful for us - - dryajov _—_ 07/28/2023 4:07 PM - - Yes, we're also working in this direction as this is crucial for us as well. There should be some result coming soon(tm), now that @bkomuves is helping us with this part. - -19. zk_id - - Our setting is much simpler, but any progress that you make (specifically in the computational cost of the polynomial commitments or alternative proofs) would be really useful for us - - bkomuves _—_ 07/28/2023 4:44 PM - - my current view (it's changing pretty often :) is that there is tension between: - - - commitment cost - - proof cost - - and verification cost - - the holy grail which is the best for all of them doesn't seem to exist. Hence, you have to make tradeoffs, and it depends on your specific use case what you should optimize for, or what balance you aim for. we plan to find some points in this 3 dimensional space which are hopefully close to the optimal surface, and in parallel to that figure out what balance to aim for, and then choose a solution based on that (and also based on what's possible, there are external restrictions) - - -July 29, 2023 - -21. bkomuves - - my current view (it's changing pretty often :) is that there is tension between:  - - - commitment cost - - proof cost - - and verification cost - -  the holy grail which is the best for all of them doesn't seem to exist. Hence, you have to make tradeoffs, and it depends on your specific use case what you should optimize for, or what balance you aim for. we plan to find some points in this 3 dimensional space which are hopefully close to the optimal surface, and in parallel to that figure out what balance to aim for, and then choose a solution based on that (and also based on what's possible, there are external restrictions) - - zk_id _—_ 07/29/2023 4:23 AM - - I agree. That's also my understanding (although surely much more superficial). - -22. _[_4:24 AM_]_ - - There is also the dimension of computation vs size cost - -23. _[_4:25 AM_]_ - - ie the VID scheme (of the paper that kickstarted this conversation) has all the properties we need, but it scales n^2 in message complexity which makes it lose the properties we are looking for after 1k nodes. We need to scale confortably to 10k nodes. - -24. _[_4:29 AM_]_ - - So we are at the moment most likely to use KZG commitments with a 2d RS polynomial. Basically just copy Ethereum. Reason is: - - - Our rollups/EZ leader will generate this, and those are beefier machines than the Base Layer. The base layer nodes just need to verify and sign the EC fragments and return them to complete the VID protocol (and then run consensus on the aggregated signed proofs). - - If we ever decide to change the design for the VID dispersal to be done by Base Layer leaders (in a multileader fashion), it can be distributed (rows/columns can be reconstructed and proven separately). I don't think we will pursue this, but we will have to if this scheme doesn't scale with the first option. - - -August 1, 2023 - -26. dryajov - - A bit scattered all over the place, mainly from @Leobago and @cskiraly @cskiraly has a draft paper somewhere - - Leobago _—_ 08/01/2023 1:13 PM - - Note much public write-ups yet. You can find some content here: - - - [https://blog.codex.storage/data-availability-sampling/](https://blog.codex.storage/data-availability-sampling/ "https://blog.codex.storage/data-availability-sampling/") - - - [https://github.com/codex-storage/das-research](https://github.com/codex-storage/das-research "https://github.com/codex-storage/das-research") - - - We also have a few Jupiter notebooks but they are not public yet. As soon as that content is out we can let you know ![🙂](https://discord.com/assets/da3651e59d6006dfa5fa07ec3102d1f3.svg) - - Codex Storage Blog - - [Data Availability Sampling](https://blog.codex.storage/data-availability-sampling/) - - The Codex team is busy building a new web3 decentralized storage platform with the latest advances in erasure coding and verification systems. Part of the challenge of deploying decentralized storage infrastructure is to guarantee that the data that has been stored and is available for retrieval from the beginning until - - GitHub - - [GitHub - codex-storage/das-research: This repository hosts all the ...](https://github.com/codex-storage/das-research) - - This repository hosts all the research on DAS for the collaboration between Codex and the EF. - GitHub - codex-storage/das-research: This repository hosts all the research on DAS for the collabora... - - [](https://opengraph.githubassets.com/39769464ebae80ca62c111bf2acb6af95fde1b9dc6e3c5a9eb56316ea363e3d8/codex-storage/das-research) - - ![GitHub - codex-storage/das-research: This repository hosts all the ...](https://images-ext-2.discordapp.net/external/DxXI-YBkzTrPfx_p6_kVpJzvVe6Ix6DrNxgrCbcsjxo/https/opengraph.githubassets.com/39769464ebae80ca62c111bf2acb6af95fde1b9dc6e3c5a9eb56316ea363e3d8/codex-storage/das-research?width=400&height=200) - -27. zk_id - - So we are at the moment most likely to use KZG commitments with a 2d RS polynomial. Basically just copy Ethereum. Reason is:  - - - Our rollups/EZ leader will generate this, and those are beefier machines than the Base Layer. The base layer nodes just need to verify and sign the EC fragments and return them to complete the VID protocol (and then run consensus on the aggregated signed proofs). - - If we ever decide to change the design for the VID dispersal to be done by Base Layer leaders (in a multileader fashion), it can be distributed (rows/columns can be reconstructed and proven separately). I don't think we will pursue this, but we will have to if this scheme doesn't scale with the first option. - - dryajov _—_ 08/01/2023 1:55 PM - - This might interest you as well - [https://blog.subspace.network/combining-kzg-and-erasure-coding-fc903dc78f1a](https://blog.subspace.network/combining-kzg-and-erasure-coding-fc903dc78f1a "https://blog.subspace.network/combining-kzg-and-erasure-coding-fc903dc78f1a") - - Medium - - [Combining KZG and erasure coding](https://blog.subspace.network/combining-kzg-and-erasure-coding-fc903dc78f1a) - - The Hitchhiker’s Guide to Subspace  — Episode II - - [](https://miro.medium.com/v2/resize:fit:1200/0*KGb5QHFQEd0cvPeP.png) - - ![Combining KZG and erasure coding](https://images-ext-2.discordapp.net/external/LkoJxMEskKGMwVs8XTPVQEEu0senjEQf42taOjAYu0k/https/miro.medium.com/v2/resize%3Afit%3A1200/0%2AKGb5QHFQEd0cvPeP.png?width=400&height=200) - -28. _[_1:56 PM_]_ - - This is a great analysis of the current state of the art in structure of data + commitment and the interplay. I would also recoment reading the first article of the series which it also links to - -29. zk_id _—_ 08/01/2023 3:04 PM - - Thanks @dryajov @Leobago ! Much appreciated! - -30. _[_3:05 PM_]_ - - Very glad that we can discuss these things with you. Maybe I have some specific questions once I finish reading a huge pile of pending docs that I'm tackling starting today... - -31. zk_id _—_ 08/01/2023 6:34 PM - - @Leobago @dryajov I was playing with the DAS simulator. It seems the results are a bunch of XML. Is there a way so I visualize the results? - -32. zk_id - - @Leobago @dryajov I was playing with the DAS simulator. It seems the results are a bunch of XML. Is there a way so I visualize the results? - - Leobago _—_ 08/01/2023 6:36 PM - - Yes, checkout the visual branch and make sure to enable plotting in the config file, it should produce a bunch of figures ![🙂](https://discord.com/assets/da3651e59d6006dfa5fa07ec3102d1f3.svg) - -33. _[_6:37 PM_]_ - - You might find also some bugs here and there on that branch ![😅](https://discord.com/assets/b45af785b0e648fe2fb7e318a6b8010c.svg) - -34. zk_id _—_ 08/01/2023 7:44 PM - - Thanks! \ No newline at end of file diff --git a/content/codex/updates/2023-08-01.md b/content/codex/updates/2023-08-01.md deleted file mode 100644 index 22cc00966..000000000 --- a/content/codex/updates/2023-08-01.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: "2023-08-01 Codex weekly" -tags: - - "codex-updates" -date: 2023-08-01 -lastmod: 2023-08-03 -draft: false ---- - -# Codex update Aug 1st - -## Client - -### Milestone: Merkelizing block data - -- Initial design writeup https://github.com/codex-storage/codex-research/blob/master/design/metadata-overhead.md - - Work break down and review for Ben and Tomasz (epic coming up) - - This is required to integrate the proving system - -### Milestone: Block discovery and retrieval - -- Some initial work break down and milestones here - https://docs.google.com/document/d/1hnYWLvFDgqIYN8Vf9Nf5MZw04L2Lxc9VxaCXmp9Jb3Y/edit - - Initial analysis of block discovery - https://rpubs.com/giuliano_mega/1067876 - - Initial block discovery simulator - https://gmega.shinyapps.io/block-discovery-sim/ - -### Milestone: Distributed Client Testing - -- Lots of work around log collection/analysis and monitoring - - Details here https://github.com/codex-storage/cs-codex-dist-tests/pull/41 - -## Marketplace - -### Milestone: L2 - -- Taiko L2 integration - - This is a first try of running against an L2 - - Mostly done, waiting on related fixes to land before merge - https://github.com/codex-storage/nim-codex/pull/483 - -### Milestone: Reservations and slot management - -- Lots of work around slot reservation and queuing https://github.com/codex-storage/nim-codex/pull/455 - -## Remote auditing - -### Milestone: Implement Poseidon2 - -- First pass at an implementation by Balazs - - private repo, but can give access if anyone is interested - -### Milestone: Refine proving system - -- Lost of thinking around storage proofs and proving systems - - private repo, but can give access if anyone is interested - -## DAS - -### Milestone: DHT simulations - -- Implementing a DHT in Python for the DAS simulator. -- Implemented logical error-rates and delays to interactions between DHT clients. \ No newline at end of file diff --git a/content/codex/updates/2023-08-11.md b/content/codex/updates/2023-08-11.md deleted file mode 100644 index 257ab9c5a..000000000 --- a/content/codex/updates/2023-08-11.md +++ /dev/null @@ -1,81 +0,0 @@ ---- -title: "2023-08-11 Codex weekly" -tags: - - "codex-updates" -date: 2023-08-11 -lastmod: 2023-08-17 -draft: false ---- - - -# Codex update August 11 - ---- -## Client - -### Milestone: Merkelizing block data - -- Initial Merkle Tree implementation - https://github.com/codex-storage/nim-codex/pull/504 -- Work on persisting/serializing Merkle Tree is underway, PR upcoming - -### Milestone: Block discovery and retrieval - -- Continued analysis of block discovery and retrieval - https://hackmd.io/_KOAm8kNQamMx-lkQvw-Iw?both=#fn5 - - Reviewing papers on peers sampling and related topics - - [Wormhole Peer Sampling paper](http://publicatio.bibl.u-szeged.hu/3895/1/p2p13.pdf) - - [Smoothcache](https://dl.acm.org/doi/10.1145/2713168.2713182) -- Starting work on simulations based on the above work - -### Milestone: Distributed Client Testing - -- Continuing working on log collection/analysis and monitoring - - Details here https://github.com/codex-storage/cs-codex-dist-tests/pull/41 - - More related issues/PRs: - - https://github.com/codex-storage/infra-codex/pull/20 - - https://github.com/codex-storage/infra-codex/pull/20 -- Testing and debugging Condex in continuous testing environment - - Debugging continuous tests [cs-codex-dist-tests/pull/44](https://github.com/codex-storage/cs-codex-dist-tests/pull/44) - - pod labeling [cs-codex-dist-tests/issues/39](https://github.com/codex-storage/cs-codex-dist-tests/issues/39) - ---- -## Infra - -### Milestone: Kubernetes Configuration and Management -- Move Dist-Tests cluster to OVH and define naming conventions -- Configure Ingress Controller for Kibana/Grafana -- **Create documentation for Kubernetes management** -- **Configure Dist/Continuous-Tests Pods logs shipping** - -### Milestone: Continuous Testing and Labeling -- Watch the Continuous tests demo -- Implement and configure Dist-Tests labeling -- Set up logs shipping based on labels -- Improve Docker workflows and add 'latest' tag - -### Milestone: CI/CD and Synchronization -- Set up synchronization by codex-storage -- Configure Codex Storage and Demo CI/CD environments - ---- -## Marketplace - -### Milestone: L2 - -- Taiko L2 integration - - Done but merge is blocked by a few issues - https://github.com/codex-storage/nim-codex/pull/483 - -### Milestone: Marketplace Sales - -- Lots of cleanup and refactoring - - Finished refactoring state machine PR [link](https://github.com/codex-storage/nim-codex/pull/469) - - Added support for loading node's slots during Sale's module start [link](https://github.com/codex-storage/nim-codex/pull/510) - ---- -## DAS - -### Milestone: DHT simulations - -- Implementing a DHT in Python for the DAS simulator - https://github.com/cortze/py-dht. - - -NOTE: Several people are/where out during the last few weeks, so some milestones are paused until they are back \ No newline at end of file diff --git a/content/codex/updates/2023-08-31.md b/content/codex/updates/2023-08-31.md deleted file mode 100644 index 78d99a9a0..000000000 --- a/content/codex/updates/2023-08-31.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: 2023-08-31 Codex weekly -tags: - - codex-updates -date: 2023-08-31 -lastmod: 2023-09-04 -draft: false ---- -# Codex Update August 21-31 - -## Client - -### Milestone: Block Merkelization -- [Storing and retrieving data using merkle trees](https://github.com/codex-storage/nim-codex/pull/541) -- [Coders for merkle trees](https://github.com/codex-storage/nim-codex/pull/519) -- [Refine merkle tree construction](https://github.com/codex-storage/nim-codex/pull/516) - -### Milestone: Block Exchange protocol refinements and simulations -- Tracker simulation implementation -- Block exchange protocol thoughts - - https://hackmd.io/ydT3AiliS8q2vdixBUXvCQ -- Follow [swarmsim repo](https://github.com/codex-storage/swarmsim) for updates - -### Milestone: Async Disc Access & Threading support -- Tests on sharing thread data with refc -- [errorVariable and thread safety](https://github.com/codex-storage/questionable/issues/45) - - [Fix error binding in without statement on multiple threads](https://github.com/codex-storage/questionable/pull/46) -- [WIP: Prototype proxy IO threadpool](https://github.com/codex-storage/nim-datastore/pull/42) - -### Milestone: Client stability and debugging -- Major effort to stabilize the Codex client through continuous automated testing - - [Start discovery after announce address is updated](https://github.com/codex-storage/nim-codex/pull/543) - - [Start discovery after announce address is updated](https://github.com/codex-storage/nim-codex/pull/536) - - [Retrieve empty blocks](https://github.com/codex-storage/nim-codex/pull/513) - -## Infra - -### Milestone: Monitoring and Metrics -- Install Node exporter and Prometheus in Dist-Tests cluster -- Grafana Dashboard updates -- Automated metrics scraping diff --git a/content/codex/updates/2023-09-15.md b/content/codex/updates/2023-09-15.md deleted file mode 100644 index 56f0e9f1b..000000000 --- a/content/codex/updates/2023-09-15.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: 2023-09-15 Codex weekly -tags: - - codex-updates -date: 2023-09-15 -lastmod: 2023-09-18 -draft: false ---- -## Client - -### Milestone: Block Merkelization - -- Continuing work on merkelization - - [Storing and retrieving data using merkle trees](https://github.com/codex-storage/nim-codex/pull/541) - - [Coders for merkle trees](https://github.com/codex-storage/nim-codex/pull/519) - - [Refine merkle tree construction](https://github.com/codex-storage/nim-codex/pull/516) - -### Milestone: Block Exchange protocol refinements and simulations -- Tracker simulation implementation -- Block exchange protocol thoughts - - https://rpubs.com/giuliano_mega/1067876 - - https://rpubs.com/giuliano_mega/1082104 -- Follow [swarmsim repo](https://github.com/codex-storage/swarmsim) for updates - -### Milestone: Async Disc Access & Threading support -- Work on IO threads support - - https://github.com/codex-storage/nim-datastore/pulls - - Some early integration here - https://github.com/codex-storage/nim-codex/pull/552 - - Based mostly on https://github.com/codex-storage/nim-codex/pull/545 and prev work by @elcritch - -### Milestone: Client stability and debugging -- Major effort to stabilize the Codex client through continuous automated testing - -## Infra - -### Milestone: Monitoring and Metrics -- Install Node exporter and Prometheus in Dist-Tests cluster -- Grafana Dashboard updates - waiting for public DNS to be setup -- Automated metrics scraping - waiting for public DNS to be setup - -## Marketplace - -### Milestone: Availabilities and Reservations -- Work ongoing in - - https://github.com/codex-storage/nim-ethers - - https://github.com/codex-storage/codex-contracts-eth - - https://github.com/codex-storage/nim-codex -- Some recent PRs - - https://github.com/codex-storage/nim-ethers/pull/54 - - https://github.com/codex-storage/nim-codex/pull/535 - -## Research - -### Milestone: Publications -- White paper - https://docs.google.com/document/d/1LCy23m90IHf32aUVhRT4r4772w1BfVcSLaJ0z9VTw9A/edit#heading=h.qs3bayckj5u4 -- Various publications incoming from Csaba - -## DAS - -### Milestone: DAS Design -- Ongoing discussions around - https://ethresear.ch/t/peerdas-a-simpler-das-approach-using-battle-tested-p2p-components/16541 - -### Milestone: Measurments and simulations -- Work continues on simulating various aspects of the DHT in https://github.com/cortze/py-dht -- Csaba discussed/suggested fixes for Discv5 with Felix Lange \ No newline at end of file diff --git a/content/codex/updates/2023-09-29.md b/content/codex/updates/2023-09-29.md deleted file mode 100644 index b763a255a..000000000 --- a/content/codex/updates/2023-09-29.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: 2023-09-29 Codex weekly -tags: - - codex-updates -date: 2023-09-29 -lastmod: 2023-09-30 -draft: false ---- -## Client - -### Milestone: Block Merkelization -- Merkelization current working branch - - https://github.com/codex-storage/nim-codex/tree/sending-blocks-with-proofs-over-the-network - -### Milestone: Block Exchange protocol refinements and simulations -- Not much done on it this past couple of weeks, progress can be tracked here when it resumes - - https://github.com/codex-storage/swarmsim - -### Milestone: Async Disc Access & Threading support -- Work on IO threads support - - All related PRs are here https://github.com/codex-storage/nim-datastore/pulls - - We now have a clear idea of how to implement and integrate it - https://github.com/codex-storage/nim-codex/pull/552 - - found a leak in Nim's `SharedPtr` https://github.com/nim-lang/threading/issues/45 and fix https://github.com/nim-lang/threading/pull/46 - -### Milestone: Client stability and debugging -- Major effort to stabilize the Codex client through continuous automated testing - - Most team members are working on this on and off, testing is ongoing - -## Infra - - Installed cert-manager in Dist-Tests cluster - - Implemented External OAUTH Authentication for Grafana/Kibana (need to adjust internal authentication) - - Exposed [Grafana](https://grafana.dist-tests.codex.storage/) and [Kibana](https://kibana.dist-tests.codex.storage/) - - [Losing the logs during Continuous Tests run](https://github.com/codex-storage/infra-codex/issues/48) - -## Research - -### Milestone: Publications -- White paper ongoing - https://docs.google.com/document/d/1LCy23m90IHf32aUVhRT4r4772w1BfVcSLaJ0z9VTw9A/edit#heading=h.qs3bayckj5u4 - -### Milestone: Sampling for storage proofs -- Large discussion around erasure coding for sampling - - https://github.com/codex-storage/zk-research-artifacts/blob/master/sampling/sampling.pdf - - https://hackmd.io/DxJzAuTZROulBhPWqScmCg?view - - https://github.com/codex-storage/codex-research/pull/184 - - https://hackmd.io/kxSF8wjPS3arDFcqFJrNDw - -## DAS -### Milestone: DAS Design -- Ongoing discussions around - https://ethresear.ch/t/peerdas-a-simpler-das-approach-using-battle-tested-p2p-components/16541 -- space-DAS (don't have link), a proposal to use spacefilling curves for sample placement - -### Milestone: Measurements and simulations -- Work continues on simulating various aspects of the DHT in https://github.com/cortze/py-dht \ No newline at end of file diff --git a/content/images copy/dns records.png b/content/images/dns records.png similarity index 100% rename from content/images copy/dns records.png rename to content/images/dns records.png diff --git a/content/images copy/quartz layout.png b/content/images/quartz layout.png similarity index 100% rename from content/images copy/quartz layout.png rename to content/images/quartz layout.png diff --git a/content/images copy/quartz transform pipeline.png b/content/images/quartz transform pipeline.png similarity index 100% rename from content/images copy/quartz transform pipeline.png rename to content/images/quartz transform pipeline.png diff --git a/content/images/reporting-meeting-flow.png b/content/images/reporting-meeting-flow.png deleted file mode 100644 index eef4ac2fa..000000000 Binary files a/content/images/reporting-meeting-flow.png and /dev/null differ diff --git a/content/index.md b/content/index.md new file mode 100644 index 000000000..7bc5f90bf --- /dev/null +++ b/content/index.md @@ -0,0 +1,22 @@ +--- +title: "" +--- +This site attempts to inform the previous, current, and future work required to fulfill the requirements of the projects under the Logos Collective, a complete tech stack that provides infrastructure for the self-sovereign network state. To learn more about the motivation, please visit the [Logos Collective Site](https://logos.co). + +This site is an ongoing work in progress. The links within are an attempt to capture a lot of moving targets. This means that the information here may or may not be the bleeding edge of what is true with respect to the development within the Logos Collective projects. Your use of this Website is subject to the following [[terms-of-use|terms of use]] which we ask you to read carefully prior to your use of the Website. + +## Navigation +- [Monthly Project Reports](tags/monthly-report) + +### Projects +- [Waku](waku/index.md) +- [Codex](codex/overview.md) +- [[nomos/index|Nomos]] + +### Services +- [Vac](vac/index.md) +- [Comms (Acid Info)](acid/index.md) +- [[insight/index|Insight]] + +### Skunk works +- [Innovation Lab](innovation_lab/index.md) diff --git a/content/innovation_lab/index.md b/content/innovation_lab/index.md deleted file mode 100644 index 60a2b6b3f..000000000 --- a/content/innovation_lab/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Innovation Lab Roadmap Overview -tags: - - overview -description: Overview of the Logos Innovation Lab development ---- - -Welcome to the Innovation lab Roadmap Overview -- [Milestones](innovation_lab/milestones-overview.md) -- [weekly updates](tags/ilab-updates) \ No newline at end of file diff --git a/content/innovation_lab/milestones-overview.md b/content/innovation_lab/milestones-overview.md deleted file mode 100644 index 0a3e66484..000000000 --- a/content/innovation_lab/milestones-overview.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "Innovation Lab Milestones Overview" -tags: -- "milestones" -date: "2023-08-17" -lastmod: "2023-08-17" ---- - -iLab Milestones can be found on the [Notion Page](https://www.notion.so/Logos-Innovation-Lab-dcff7b7a984b4f9e946f540c16434dc9?pvs=4) \ No newline at end of file diff --git a/content/innovation_lab/updates/2023-07-12.md b/content/innovation_lab/updates/2023-07-12.md deleted file mode 100644 index 46031f836..000000000 --- a/content/innovation_lab/updates/2023-07-12.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "2023-07-12 Innovation Lab Weekly" -tags: -- "ilab-updates" -date: 2023-07-12 -lastmod: 2023-08-03 ---- - -**Logos Lab** 12th of July -Currently working on the Waku Objects prototype, which is a modular system for transactional chat objects. - -**Milestone**: deliver the first transactional Waku Object called Payggy (attached some design screenshots). - -It is now possible to make transactions on the blockchain and the objects send notifications over the messaging layer (e.g. Waku) to the other participants. What is left is the proper transaction status management and some polishing. - -There is also work being done on supporting external objects, this enables creating the objects with any web technology. This work will guide the separation of the interfaces between the app and the objects and lead us to release it as an SDK. - -**Next milestone**: group chat support - -The design is already done for the group chat functionality. There is ongoing design work for a new Waku Object that would showcase what can be done in a group chat context. - -Deployed version of the main branch: -https://waku-objects-playground.vercel.app/ - -Link to Payggy design files: -https://scene.zeplin.io/project/64ae9e965652632169060c7d - -Main development repo: -https://github.com/logos-innovation-lab/waku-objects-playground - -Contact: -You can find us at https://discord.com/channels/973324189794697286/1118949151225413872 or join our discord at https://discord.gg/UtVHf2EU - ---- - -#### Conversation - -1. petty _—_ 07/15/2023 5:49 AM - - the `waku-objects` repo is empty. Where is the code storing that part vs the playground that is using them? - -2. petty - - the `waku-objects` repo is empty. Where is the code storing that part vs the playground that is using them? - -3. attila🍀 _—_ 07/15/2023 6:18 AM - - at the moment most of the code is in the `waku-objects-playground` repo later we may split it to several repos here is the link: [https://github.com/logos-innovation-lab/waku-objects-playground](https://github.com/logos-innovation-lab/waku-objects-playground "https://github.com/logos-innovation-lab/waku-objects-playground") \ No newline at end of file diff --git a/content/innovation_lab/updates/2023-08-02.md b/content/innovation_lab/updates/2023-08-02.md deleted file mode 100644 index 26dd7b9ba..000000000 --- a/content/innovation_lab/updates/2023-08-02.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: "2023-08-02 Innovation Lab weekly" -tags: - - "ilab-updates" -date: 2023-08-02 -lastmod: 2023-08-03 -draft: false ---- - -**Logos Lab** 2nd of August -Currently working on the Waku Objects prototype, which is a modular system for transactional chat objects. - -The last few weeks were a bit slower than usual because there were vacations, one team member got married, there was EthCC and a team offsite. - -Still, a lot of progress were made and the team released the first version of a color system in the form of an npm package, which lets the users to choose any color they like to customize their app. It is based on grayscale design and uses luminance, hence the name of the library. Try it in the Playground app or check the links below. - -**Milestone**: group chat support - -There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation. - -**Next milestone**: Splitter Waku Object supporting group chats and smart contracts - -This will be the first Waku Object that is meaningful in a group chat context. Also this will demonstrate how to use smart contracts and multiparty transactions. - -Deployed version of the main branch: -https://waku-objects-playground.vercel.app/ - -Main development repo: -https://github.com/logos-innovation-lab/waku-objects-playground - -Grayscale design: -https://grayscale.design/ - -Luminance package on npm: -https://www.npmjs.com/package/@waku-objects/luminance - -Contact: -You can find us at https://discord.com/channels/973324189794697286/1118949151225413872 or join our discord at https://discord.gg/ZMU4yyWG - ---- - -### Conversation - -1. fryorcraken _—_ Yesterday at 10:58 PM - - > There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation. - - While status-js does implement chat features, I do not know how nice the API is. Waku is actively hiring a chat sdk lead and golang eng. We will probably also hire a JS engineer (not yet confirmed) to provide nice libraries to enable such use case (1:1 chat, group chat, community chat). - - -August 3, 2023 - -2. fryorcraken - - > > There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation. While status-js does implement chat features, I do not know how nice the API is. Waku is actively hiring a chat sdk lead and golang eng. We will probably also hire a JS engineer (not yet confirmed) to provide nice libraries to enable such use case (1:1 chat, group chat, community chat). - -3. attila🍀 _—_ Today at 4:21 AM - - This is great news and I think it will help with adoption. I did not find a JS API for status (maybe I was looking at the wrong places), the closest was the `status-js-api` project but that still uses whisper and the repo recommends to use `js-waku` instead ![🙂](https://discord.com/assets/da3651e59d6006dfa5fa07ec3102d1f3.svg) [https://github.com/status-im/status-js-api](https://github.com/status-im/status-js-api "https://github.com/status-im/status-js-api") Also I also found the `56/STATUS-COMMUNITIES` spec: [https://rfc.vac.dev/spec/56/](https://rfc.vac.dev/spec/56/ "https://rfc.vac.dev/spec/56/") It seems to be quite a complete solution for community management with all the bells and whistles. However our use case is a private group chat for your existing contacts, so it seems to be a bit overkill for that. - -4. fryorcraken _—_ Today at 5:32 AM - - The repo is status-im/status-web - -5. _[_5:33 AM_]_ - - Spec is [https://rfc.vac.dev/spec/55/](https://rfc.vac.dev/spec/55/ "https://rfc.vac.dev/spec/55/") - -6. fryorcraken - - The repo is status-im/status-web - -7. attila🍀 _—_ Today at 6:05 AM - - As constructive feedback I can tell you that it is not trivial to find it and use it in other projects It is presented as a React component without documentation and by looking at the code it seems to provide you the whole chat UI of the desktop app, which is not necessarily what you need if you want to embed it in your app It seems to be using this package: [https://www.npmjs.com/package/@status-im/js](https://www.npmjs.com/package/@status-im/js "https://www.npmjs.com/package/@status-im/js") Which also does not have documentation I assume that package is built from this: [https://github.com/status-im/status-web/tree/main/packages/status-js](https://github.com/status-im/status-web/tree/main/packages/status-js "https://github.com/status-im/status-web/tree/main/packages/status-js") This looks promising, but again there is no documentation. Of course you can use the code to figure out things, but at least I would be interested in what are the requirements and high level architecture (does it require an ethereum RPC endpoint, where does it store data, etc.) so that I can evaluate if this is the right approach for me. So maybe a lesson here is to put effort in the documentation and the presentation as well and if you have the budget then have someone on the team whose main responsibility is that (like a devrel or dev evangelist role) \ No newline at end of file diff --git a/content/innovation_lab/updates/2023-08-11.md b/content/innovation_lab/updates/2023-08-11.md deleted file mode 100644 index 761316a9f..000000000 --- a/content/innovation_lab/updates/2023-08-11.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: "2023-08-17 weekly" -tags: - - "-updates" -date: 2023-08-11 -lastmod: 2023-08-17 -draft: false ---- - - -# **Logos Lab** 11th of August -Currently working on the Waku Objects prototype, which is a modular system for transactional chat objects. - -We merged the group chat but it surfaced plenty of issues that were not a problem with 1on1 chats, both with our Waku integration and from product perspective as well. Spent the bigger part of the week with fixing these. We also registered a new domain, wakuplay.im where the latest version is deployed. It uses the Gnosis chain for transactions and currently the xDai and Gno tokens are supported, but it is easy to add other ERC-20 tokens now. - -**Next milestone**: Splitter Waku Object supporting group chats and smart contracts - -This will be the first Waku Object that is meaningful in a group chat context. Also this will demonstrate how to use smart contracts and multiparty transactions. The design is ready and the implementaton has started. - -**Next milestone**: Basic Waku Objects website - -Work started toward having a structure for a website and the content is shaping up nicely. The implementation has been started on it as well. - -Deployed version of the main branch: -https://www.wakuplay.im/ - -Main development repo: -https://github.com/logos-innovation-lab/waku-objects-playground - -Contact: -You can find us at https://discord.com/channels/973324189794697286/1118949151225413872 or join our discord at https://discord.gg/eaYVgSUG \ No newline at end of file diff --git a/content/insight/business-analysis/index.md b/content/insight/business-analysis/index.md deleted file mode 100644 index 5a19db489..000000000 --- a/content/insight/business-analysis/index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Insight Business Analysis Overview ---- -## `insight:business-analysis:` ---- - -### `datalake-repo-ingestion` - -### `real-opt-keycard` diff --git a/content/insight/dao/index.md b/content/insight/dao/index.md deleted file mode 100644 index f420c8010..000000000 --- a/content/insight/dao/index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Insight DAO Overview ---- -## `insight:dao:` ---- - -### `spiff-process-growth` - -### `spiff-bounty-experiment` \ No newline at end of file diff --git a/content/insight/index.md b/content/insight/index.md deleted file mode 100644 index cd8e7532b..000000000 --- a/content/insight/index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: Insight Team Overview ---- -## `insight:` ---- -### Description -The insight team acts as a glue within the Logos Collective. They serve development projects by helping to track development activity and aiding in resource allocation. They serve the broader service units within the organization by helping them understand who's doing what, how much effort is going into each chunk of work, how much it costs, and future projections of milestone delivery. - -This page tracks the various work that they engage in throughout the org. As this is a service unit and not a project, it does not strictly work off a milestone based approach and has consistent service work to the various groups within the Logos Collective. - -### Current work -#### `dao:` [[insight/dao/index|details]] - -#### `project-reporting:` [[insight/project-reporting/index|details]] - -#### `business-analysis:` [[insight/business-analysis/index|details]] diff --git a/content/insight/project-reporting/index.md b/content/insight/project-reporting/index.md deleted file mode 100644 index 2af669b1f..000000000 --- a/content/insight/project-reporting/index.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Insight Project Reporting Overview ---- -## `insight:project-reporting:` ---- - -### `milestone-publishing:` -- `codex` -- `nomos` -- `waku` -- `vac` - -### `monthly-reports` - -### `llm-dev-activity` - - diff --git a/content/nomos/base-layer-spec/data-availability/index.md b/content/nomos/base-layer-spec/data-availability/index.md deleted file mode 100644 index 88bf5d0a1..000000000 --- a/content/nomos/base-layer-spec/data-availability/index.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: Nomos Data Availability Details ---- -## `nomos:data-availability:` ---- - -### Description - -Nomos Data Availability design: -- Our Base Layer doesn't have execution. Only the (global) Coordination Layer has a minimal set of operations. -- Our rollups are quasi-sovereign, meaning that they do not prove their state to the Base Layer, but they have to prove asset deposit/withdrawals, as well as implement the mechanism to pay for using the Base Layer DA+consensus. _Note that full sovereignty means no bridging and implementing a client of the DA for the payments._ -- We also have a form of PBS, but enshrined in the L2s. The Base Layer only performs consensus on data that has been dispersed by the Builder. The Proposer is a node in the Base Layer, and the Builder is a node of the Execution Zone. -### Research - -- Data Availability Specification: https://www.notion.so/Data-Availability-Specification-wip-c3961b681eba4ccdab2be9181e4207b4 - -### Engineering - - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - - Initial data availability implementation: In progress, 2023-09-01, 2023-11-30 -``` \ No newline at end of file diff --git a/content/nomos/base-layer-spec/index.md b/content/nomos/base-layer-spec/index.md deleted file mode 100644 index aeb691261..000000000 --- a/content/nomos/base-layer-spec/index.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: "Nomos Milestone: Full Base Layer Specification" -description: The initial milestone of the Nomos project is a full specification of the Base Layer. This entails detailed explanations of the working parts of the architecture and how they lay the groundwork for future layers to be built on top. ---- -## `nomos:base-layer-spec:` ---- -### Description -The initial milestone of the Nomos project is a full specification of the Base Layer. This entails detailed explanations of the working parts of the architecture and how they lay the groundwork for future layers to be built on top. The working parts are: -- A private P2P network -- Data availability -- A private Proof-of-State model leveraging a scalable, lightweight consensus algorithm - -This work can be tracked via the following epics. - -### Key Epics -#### `network-privacy:` [[nomos/base-layer-spec/network-privacy/index|details]] -- due: -- progress: -- short description: Creation of a privacy preserving network underlay - -#### `private-pos:` [[nomos/base-layer-spec/priv-pos/index|details]] -- next deliverable: Sept 29, 2023 -- progress: 99% -- short description: Creation of a Proof-of-Stake model that preserves the privacy of the stakers within the network - -#### `data-availability:` [[content/nomos/base-layer-spec/data-availability/index|details]] -- due: -- progress: -- short description: Definition of how Nomos makes data available to network participants, and its reference implementation for the Base Layer. - -### Dependent Upon: -#### `vac:dr:carnot-aggregation-spec` -- [[vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation|carnot-2-3rds-vote-aggregation]] - -#### `vac:tke:stake-rewards` -- [[vac/tke/g/nomos/economic-analysis|economic-analysis]] \ No newline at end of file diff --git a/content/nomos/base-layer-spec/network-privacy/index.md b/content/nomos/base-layer-spec/network-privacy/index.md deleted file mode 100644 index 7c6d5ba31..000000000 --- a/content/nomos/base-layer-spec/network-privacy/index.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: Nomos Network Privacy Details ---- -## `nomos:network-privacy:` ---- - -### Current Focus - -**Mixnet 1.0** - a technology/system that helps keep information sent over the internet private and secure. It does so by mixing up data from different sources before sending it to its destination. In Nomos chain: -- Mixnet nodes opt-in by publishing their IP and providing stake. -- The mixnet topology of layers is public and defined on-chain (by some deterministic algorithm using the random-beacon for example). -- After certain number of epochs (to be determined), a new set of nodes is chosen and a new topology of Mixnet layers is defined. Nodes need to renew their stake and their keys (for security). - -For more information, check https://www.notion.so/Private-Routing-Mixnet-Network-Privacy-Component-1-613f53cf11a245098c50af6b191d31d2 - -### Research -#### Current Tasks - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Viability analysis of the Embedded Mixnet: In progress, 2023-09-18, 2023-10-06 -``` - - -### Engineering -#### Current Tasks - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 7day - dateFormat YYYY-MM-DD - section Status - Mixnet 1.0 Stabilization: In progress, 2023-09-18, 2023-09-30 -``` - diff --git a/content/nomos/base-layer-spec/priv-pos/index.md b/content/nomos/base-layer-spec/priv-pos/index.md deleted file mode 100644 index 059ff7f05..000000000 --- a/content/nomos/base-layer-spec/priv-pos/index.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Nomos Private Proof of Stake Details ---- -### Description - -In PoS systems, preserving stake privacy is vital to avoid exposing users’ wealth. Different approaches to achieve this include leveraging confidential assets, such as or coin mixing protocols applied to staking. - -### Current Status -Research phase: writing Private Proof of Stake Specifications: -Due Date: 2023-09-29 - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - PPoS Specifications: In progress, 2023-06-25, 2023-09-29 -``` - diff --git a/content/nomos/base-layer-testnet/index.md b/content/nomos/base-layer-testnet/index.md deleted file mode 100644 index 5de2dbc25..000000000 --- a/content/nomos/base-layer-testnet/index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "Nomos Milestone: Base Layer Testnet Implementation" ---- -## `nomos:base-layer-testnet:` ---- -### Description - -### Key Epics -#### `testnet:` [[nomos/base-layer-testnet/testnet/index|index]] -- due: October 27th -- progress: 66% (unstable testnet) -- short description: deployment of the initial testnet for the Nomos network - -### Dependent Upon: -#### `vac:dst:node-cicd` -- [[ci-integration]] \ No newline at end of file diff --git a/content/nomos/base-layer-testnet/testnet/index.md b/content/nomos/base-layer-testnet/testnet/index.md deleted file mode 100644 index fc27f1252..000000000 --- a/content/nomos/base-layer-testnet/testnet/index.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -title: Nomos Testnet Details ---- -## `nomos:testnet:` ---- - -### Description - -We aim for having an **unstable** testnet (asap) with no guarantees on breaking changes: - -- Data can be wiped out at every new rollout -- Accounts may disappear at some point -- There are no incentives initially (ie no token as it requires data permanence) -- A good first functionality target would be to implement something like Bitcoin's ordinals (NFTs), since they are just signed data. - -More information: https://www.notion.so/Testnet-55049d959a6145fd9c542c5b3999c65a - -### Research - -### Engineering -#### Current Focus - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Node for Testnet: In progress, 2023-08-28, 2023-10-27 -``` - - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Client for Testnet: In progress, 2023-09-11, 2023-10-27 -``` - - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 7day - dateFormat YYYY-MM-DD - section Status - DevOps for Testnet: In progress, 2023-09-11, 2023-09-30 -``` \ No newline at end of file diff --git a/content/nomos/consensus-def/index.md b/content/nomos/consensus-def/index.md deleted file mode 100644 index 23018a23e..000000000 --- a/content/nomos/consensus-def/index.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "Nomos Milestone: Scalable Consensus Definition" ---- -## `nomos:consensus-def:` ---- -### Description -This tracks the work of the initial discovery effort that lays the groundwork for all other work, consensus. A survey of options was undertaken, explored and documented. The product of all the work is Carnot. - -Main whitepaper: - -Pseudocode specification of Carnot: https://github.com/logos-co/nomos-specs/blob/master/carnot/spec.md - -**Status**: Delivered \ No newline at end of file diff --git a/content/nomos/index.md b/content/nomos/index.md deleted file mode 100644 index 1e137ef33..000000000 --- a/content/nomos/index.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: Nomos Roadmap Overview -tags: - - nomos - - Roadmap - - overview -lastmod: 2023-10-12 -description: The Nomos project is an attempt to make a scalable, modular, and private L1. To learn more about the project, please visit https://nomos.tech. Nomos is currently in its initial phase as a project within Logos, namely the research and architecture design phase. ---- -## `nomos:` ---- - -### Nomos Overview -The Nomos project is an attempt to make a scalable, modular, and private L1. To learn more about the project, please visit [the website](https://nomos.tech) - -Nomos is currently in its initial phase as a project within Logos, namely the research and architecture design phase. - -#### Latest Monthly Report -- [[nomos/monthly-reports/2023-sept|2023-sept]] - -### Current Key Milestones - -#### `base-layer-spec:` [[nomos/base-layer-spec/index|details]] -- due: 2024 Q1 -- status: in progress -- description: Full specification of the Nomos Base Layer along with accompanying research and justification. - -#### `base-layer-testnet:` [[nomos/base-layer-testnet/index|details]] -- due: 2024 Q3 -- status: in progress -- description: - -#### `coord-layer-spec:` -- due: 2024 Q4 -- status: pending -- description: - -#### `coord-layer-testnet:` -- due: 2025 Q1 -- status: pending -- description: - ---- -### Delivered Milestones -#### `consensus-def:` [[nomos/consensus-def/index|details]] -- due: 2023 Q3 -- status: complete -- description: Research and specification of an underlying consensus algorithm to be used as foundation for Nomos. - ---- -### Useful Links -- [Milestones Overview Notion Page](https://www.notion.so/ec57b205d4b443aeb43ee74ecc91c701?v=e782d519939f449c974e53fa3ab6978c): where the team updates their milestones before being transferred here. - diff --git a/content/templates/monthly-template.md b/content/nomos/monthly-reports/2023-oct.md similarity index 64% rename from content/templates/monthly-template.md rename to content/nomos/monthly-reports/2023-oct.md index fcccddb9d..bce39e2cf 100644 --- a/content/templates/monthly-template.md +++ b/content/nomos/monthly-reports/2023-oct.md @@ -1,8 +1,8 @@ --- -title: Monthly Report +title: 2023 October Nomos Monthly Report draft: true -lastmod: <% tp.date.now() %> -description: "Monthly Report of " +lastmod: 2023-10-25 +description: Monthly Report of Nomos --- ## Executive Summary diff --git a/content/nomos/monthly-reports/2023-sept.md b/content/nomos/monthly-reports/2023-sept.md deleted file mode 100644 index b0d5decb3..000000000 --- a/content/nomos/monthly-reports/2023-sept.md +++ /dev/null @@ -1,100 +0,0 @@ ---- -title: 2023 September Nomos Monthly Report -draft: false -lastmod: 2023-09-27 -tags: - - monthly-report - - nomos ---- - -## Executive Summary -The Nomos team continues to stay focused on research related to the fine-grained details of the Base Layer specification and implementation. The addition of a Project Manager is expected to not only expedite the research by allowing the lead to dive deeper into the issues involved but also make that work and progress more transparent. - -Mehmet joins the team next month to fulfill a long needed dedicated role in research privacy and zero-knowledge technology as it pertains to the Nomos requirements. - -The whitepapers plan to be polished and published by early next month which not only details the current specifications but also known problems that need to be solved. - -## Key Updates - -### Personnel -- Filip has joined as a Project Manager (last month) to assist in various activities. His position is to sit in between the Insights team and the Nomos project to facilitate development tracking and resource allocation. It is anticipated that his involvement will speed up development as current resources are then freed to focus on research and development. Until demands within Nomos require full-time engagement from him, he will also be assisting with Vac Program Management. -- After a lot of candidate interviews, Mehmet was offered a position and accepted to focus on the privacy and cryptography research needs within the project. His background in cryptography and security auditing of popular zero-knowledge platforms is expected to be very useful in aiding to architect Nomos. Mehmet's starting date is Oct 2 - - Another candidate for this role that was considered, Ramses, has joined the Vac team and will initially be aiding in this work and growing the relationship with their [[vac/acz/index|Applied Crypto and Zero-Knowledge]] team. Ramses started in -- An offer has been extended to a candidate for the open role of Applied Network Researcher. He passed all interview rounds but unfortunately passed on the final offer for another opportunity. -- The roles of [Applied Network Researcher]() and [Distributed Systems Researcher](https://jobs.status.im/?gh_jid=5310504) are still open and candidates are being interviewed. - -### Milestones -Nomos' roadmap is currently composed of five main sections, each of which is broken up into `Research` and `Development`. Obviously, `Development` lags behind the `Research` section. These five areas are as follows: -- `Whitepapers` -- `Network Privacy and Mixnet` -- `Testnet` -- `Private PoS` -- `Data Availability` - -The Milestone definitions and timelines are not yet ported to this site, and as such, are private to Logos. They are planned to be publicized on this site by the end of the this month, potentially bleeding into the beginning of October. For those with Notion access, you can view the Milestone definitions [here](https://www.notion.so/Work-In-Progress-9949ac425fd240b1a14006eeca03d874). - -The following sections will outline key activity across these milestones. If more information and detail is desired, links can be found under the associated heading among the [[#Sources and Useful Links]] Weekly updates section. - -#### Whitepapers -The current Whitepaper drafts are almost ready for publication. They require only "beautification" and a listing of detailed "current unsolved problems" that need to be explored later in the total project. This will be done following the current prioritization of mixnet specification. - -This milestone will be completed next month. - -#### Network Privacy and Mixnet -The specification of the mixnet is currently underway and expected to wrap up soon (next month??). This initial specification is modeled after the current State of the Art in the mixnet industry. This is chosen to be critical path based on all the depending architectural decisions that stem from decisions of the networking layer. - -Review and analysis of current mixnet literature continues. Throughout this review, a modeling framework was developed in order to help evaluate future (v2) speculative mixnet architectures as compared to the current one. This theoretical framework has already been able to reproduce known results within the industry, such as deriving that the probability of an anonymity failure: -- decreases when increasing the number of layers -- increases when increasing the number of nodes within a single layer. - -Framework and analysis details can be found in [the overleaf document](https://www.overleaf.com/read/rybwvjftfrrg). - -While research explores subtleties in the mixnet specification, development has tackled the foundations of its implementation on top of `libp2p` within the `nomos-node` repository. They've logically setup how it connects to the rest of the pieces of the node, setup testing frameworks and node monitoring hooks, and generally got it provisioned for the upcoming testnet. - -#### Testnet -A PoC/Draft Testnet was created and merged via Docker-Compose, then general exploration was done to identify what to measure and how to do it within the `nomos-node` software. - -Simulations of the branch overlay with 1 committee was conducted. Initial results discovered a bug in reproducibility that was fixed. Additional simulations resulted in discovery of inter-module errors with the leader selection. This is currently being explored along with integration of mixnet developments. - -#### Private PoS -Research was conducted in a variety of areas around a Private Proof of Stake spec relevant to the architecture of Nomos. All details can be found in the Whitepaper descriptions. - -The initial design was created based on Zcash designs with section details around how "stake" is considered for the Base Layer of Nomos, how "restaking" could work, and various consensus modifications around Carnot. An introduction of "shadows" was done which presents the ideas around the initial voting process. The logic of these "shadows" is currently being fleshed out so that they're more intuitive to understand. One result is that they're now called "Validators" in an effort to keep naming conventions reasonable across the industry. - -Much attention was spent on a discovered issue with vote propagation within this construction. This issue is around the implications of vote withholding and how they change as you move up the overlay. The solution being to propagate a map of seen votes upstream alongside the vote, thus increasing transparency of participation. - -The concept of "Hastiness" has been introduced to describe the leader's ability to decide whether or not to include votes from the root committee if the threshold is reached before they've had the opportunity to conclude. More research is underway to detail the implications of this decisions with respect to payout, latency, and security. - -Most notably, an extension (or more constrained parameterization) of Carnot was initiated and is underway (expected by end of Oct) as a consequence of needing to mitigate a signature aggregation issue. This extension requires 2/3 votes to be collected before a decisions is made. -#### Data Availability -Research continues on the various available Data Availability schemes and their trade-offs which resulted in the ability to make some decisions on the Nomos specification and identified a more specific personnel requirement for specialized cryptographic expertise. This research demand will now be filled by the new addition to the team and progress is expected to accelerate. - -An analysis of the impact of node decay in Data Availability [was performed](https://www.overleaf.com/read/gzqvbbmfnxyp) and presented in a [Logos Research Seminar](https://minutes.logos.co/logos/logos-research-call-notes#september-13). This research resulted in a draft specification of [private DA](https://www.notion.so/Data-Availability-Specification-c3961b681eba4ccdab2be9181e4207b4?d=d4e8d1bcd6224682ba74737100106e48#0c70202794214cbab626e51f7f1f7c24). This then lead to the [first draft](https://www.notion.so/Practical-Private-Addressing-Network-Privacy-Component-2-2b9b4923124a4fdb81dba5d2bba1d289?d=99166164267a46589c5715175e1b3657#5e27d2010d30468f9d8f0d0928b9c639) of a complete privacy solution for the networking layer for consensus and DA. - -The architecture of Data Availability services was fleshed out within `nomos-node` software. Data dissemination implementation was completed and the mempool for certificates is currently in progress. -## Perceived Changes in Project Risk -Privacy remains at the forefront of this project's desired requirements. As such, it is important to define what types of privacy the project can offer and then detail exactly how various technology provides it. This is a "ground up" process that starts at the lowest layers and propagates up through the stack. Due to the continued exploration and designing of the Base Layer, it remains to be seen how the currently designs will impact upper layers, namely "Execution Zones." The on-going development of the [[vac/zkvm/index|zkVM]] incubation project within Vac raises the risk of incompatibility between the two as both projects are optimizing for their respective domains in parallel and without much communication. - -## Future Plans - -### Insight -It is expected that the entire Nomos roadmap will be specified within this site and the weekly reporting process will be in line with the Milestones defined therein. - -A `Logos Collaborations` section will be included next month to highlight differences in alignment with the Logos Collective as well as cross project collaboration updates. - -Depending on the uptake and viability of the [Waku reporting process](https://github.com/waku-org/pm) to other projects, then a myriad of quantitative measures will be included in the next monthly report. -### Project -Next month focuses on finalizing and publishing: -- the first version of the Whitepapers - - emphasis that specification details will focus on the Base Layer implementation, leaving unknowns and explicit detail of above layers to be explored as open problems. -- a Nomos Testnet Client and Node implementation -- a viability analysis of an embedded mixnet -- a specification and pseudocode for the extended 2/3-vote aggregation Carnot consensus algorithm (Vac dependency: [[vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation|carnot-2-3rds-vote-aggregation]]) - -## Sources and Useful Links - -Weekly updates referenced -- [[nomos/updates/2023-09-04|2023-09-04]] -- [[nomos/updates/2023-09-11|2023-09-11]] -- [[nomos/updates/2023-09-19|2023-09-19]] -- [[nomos/updates/2023-09-26|2023-09-26]] \ No newline at end of file diff --git a/content/nomos/monthly-reports/index.md b/content/nomos/monthly-reports/index.md deleted file mode 100644 index ea721f006..000000000 --- a/content/nomos/monthly-reports/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: Nomos Monthly Reports ---- -Here are the monthly reports that are generated. \ No newline at end of file diff --git a/content/nomos/updates/2023-07-24.md b/content/nomos/updates/2023-07-24.md deleted file mode 100644 index 613f29c52..000000000 --- a/content/nomos/updates/2023-07-24.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: "2023-07-24 Nomos weekly" -tags: - - "nomos-updates" -date: 2023-07-24 -lastmod: 2023-08-03 -draft: false ---- - -**Research** - -- Milestone 1: Understanding Data Availability (DA) Problem - - High-level exploration and discussion on data availability problems in a collaborative offsite meeting in Paris. - - Explored the necessity and key challenges associated with DA. - - In-depth study of Verifiable Information Dispersal (VID) as it relates to data availability. - - **Blocker:** The experimental tests for our specific EC scheme are pending, which is blocking progress to make final decision on KZG + commitments for our architecture. -- Milestone 2: Privacy for Proof of Stake (PoS) - - Analyzed the capabilities and limitations of mixnets, specifically within the context of timing attacks in private PoS. - - Invested time in understanding timing attacks and how Nym mixnet caters to these challenges. - - Reviewed the Crypsinous paper to understand its privacy vulnerabilities, notably the issue with probabilistic leader election and the vulnerability of anonymous broadcast channels to timing attacks. - -**Development** - -- Milestone 1: Mixnet and Networking - - Initiated integration of libp2p to be used as the full node's backend, planning to complete in the next phase. - - Begun planning for the next steps for mixnet integration, with a focus on understanding the components of the Nym mixnet, its problem-solving mechanisms, and the potential for integrating some of its components into our codebase. -- Milestone 2: Simulation Application - - Completed pseudocode for Carnot Simulator, created a test pseudocode, and provided a detailed description of the simulation. The relevant resources can be found at the following links: - - Carnot Simulator pseudocode (https://github.com/logos-co/nomos-specs/blob/Carnot-Simulation/carnot/carnot_simulation_psuedocode.py) - - Test pseudocode (https://github.com/logos-co/nomos-specs/blob/Carnot-Simulation/carnot/test_carnot_simulation.py) - - Description of the simulation (https://www.notion.so/Carnot-Simulation-c025dbab6b374c139004aae45831cf78) - - Implemented simulation network fixes and warding improvements, and increased the run duration of integration tests. The corresponding pull requests can be accessed here: - - Simulation network fix (https://github.com/logos-co/nomos-node/pull/262) - - Vote tally fix (https://github.com/logos-co/nomos-node/pull/268) - - Increased run duration of integration tests (https://github.com/logos-co/nomos-node/pull/263) - - Warding improvements (https://github.com/logos-co/nomos-node/pull/269) \ No newline at end of file diff --git a/content/nomos/updates/2023-07-31.md b/content/nomos/updates/2023-07-31.md deleted file mode 100644 index c61872c16..000000000 --- a/content/nomos/updates/2023-07-31.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "2023-07-31 Nomos weekly" -tags: - - "nomos-updates" -date: 2023-07-31 -lastmod: 2023-08-03 -draft: false ---- - -**Nomos 31st July** - -[Network implementation and Mixnet]: - -Research -- Initial analysis on the mixnet Proof of Concept (PoC) was performed, assessing components like Sphinx for packets and delay-forwarder. -- Considered the use of a new NetworkInterface in the simulation to mimic the mixnet, but currently, no significant benefits from doing so have been identified. -Development -- Fixes were made on the Overlay interface. -- Near completion of the libp2p integration with all tests passing so far, a PR is expected to be opened soon. -- Link to libp2p PRs: https://github.com/logos-co/nomos-node/pull/278, https://github.com/logos-co/nomos-node/pull/279, https://github.com/logos-co/nomos-node/pull/280, https://github.com/logos-co/nomos-node/pull/281 -- Started working on the foundation of the libp2p-mixnet transport. - -[Private PoS]: - -Research -- Discussions were held on the Privacy PoS (PPoS) proposal, aligning a general direction of team members. -- Reviews on the PPoS proposal were done. -- A proposal to merge the PPoS proposal with the efficient one was made, in order to have both privacy and efficiency. -- Discussions on merging Efficient PoS (EPoS) with PPoS are in progress. - -[Carnot]: - -Research -- Analyzing Bribery attack scenarios, which seem to make Carnot more vulnerable than expected. - - -**Development** - -- Improved simulation application to meet test scale requirements (https://github.com/logos-co/nomos-node/pull/274). -- Created a strategy to solve the large message sending issue in the simulation application. - -[Data Availability Sampling (or VID)]: - -Research -- Conducted an analysis of stored data "degradation" problem for data availability, modeling fractions of nodes which leave the system at regular time intervals -- Continued literature reading on Verifiable Information Dispersal (VID) for DA problem, as well as encoding/commitment schemes. \ No newline at end of file diff --git a/content/nomos/updates/2023-08-07.md b/content/nomos/updates/2023-08-07.md deleted file mode 100644 index e6b195bf6..000000000 --- a/content/nomos/updates/2023-08-07.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "2023-08-07 Nomos weekly" -tags: - - "nomos-updates" -date: 2023-08-07 -lastmod: 2023-08-07 -draft: false ---- - -Nomos weekly report -================ - -### Network implementation and Mixnet: -#### Research -- Researched the Nym mixnet architecture in depth in order to design our prototype architecture. - (Link: https://github.com/logos-co/nomos-node/issues/273#issuecomment-1661386628) -- Discussions about how to manage the mixnet topology. - (Link: https://github.com/logos-co/nomos-node/issues/273#issuecomment-1665101243) -#### Development -- Implemented a prototype for building a Sphinx packet, mixing packets at the first hop of gossipsub with 3 mixnodes (+ encryption + delay), raw TCP connections between mixnodes, and the static entire mixnode topology. - (Link: https://github.com/logos-co/nomos-node/pull/288) -- Added support for libp2p in tests. - (Link: https://github.com/logos-co/nomos-node/pull/287) -- Added support for libp2p in nomos node. - (Link: https://github.com/logos-co/nomos-node/pull/285) - -### Private PoS: -#### Research -- Worked on PPoS design and addressed potential metadata leakage due to staking and rewarding. -- Focus on potential bribery attacks and privacy reasoning, but not much progress yet. -- Stopped work on Accountability mechanism and PPoS efficiency due to prioritizing bribery attacks. - -### Carnot: -#### Research -- Addressed two solutions for the bribery attack. Proposals pending. -- Work on accountability against attacks in Carnot including Slashing mechanism for attackers is paused at the moment. -- Modeled data decimation using a specific set of parameters and derived equations related to it. -- Proposed solutions to address bribery attacks without compromising the protocol's scalability. - -### Data Availability Sampling (VID): -#### Research -- Analyzed data decimation in data availability problem. - (Link: https://www.overleaf.com/read/gzqvbbmfnxyp) -- DA benchmarks and analysis for data commitments and encoding. This confirms that (for now), we are on the right path. -- Explored the idea of node sharding: https://arxiv.org/abs/1907.03331 (taken from Celestia), but discarded it because it doesn't fit our architecture. - -#### Testing and Node development: -- Fixes and enhancements made to nomos-node. - (Link: https://github.com/logos-co/nomos-node/pull/282) - (Link: https://github.com/logos-co/nomos-node/pull/289) - (Link: https://github.com/logos-co/nomos-node/pull/293) - (Link: https://github.com/logos-co/nomos-node/pull/295) -- Ran simulations with 10K nodes. -- Updated integration tests in CI to use waku or libp2p network. - (Link: https://github.com/logos-co/nomos-node/pull/290) -- Fix for the node throughput during simulations. - (Link: https://github.com/logos-co/nomos-node/pull/295) \ No newline at end of file diff --git a/content/nomos/updates/2023-08-14.md b/content/nomos/updates/2023-08-14.md deleted file mode 100644 index d6d686277..000000000 --- a/content/nomos/updates/2023-08-14.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: "2023-08-17 Nomos weekly" -tags: - - "nomos-updates" -date: 2023-08-14 -lastmod: 2023-08-17 -draft: false ---- - - -# **Nomos weekly report 14th August** ---- - -## **Network Privacy and Mixnet** - -### Research -- Mixnet architecture discussions. Potential agreement on architecture not very different from PoC -- Mixnet preliminary design [https://www.notion.so/Mixnet-Architecture-613f53cf11a245098c50af6b191d31d2] -### Development -- Mixnet PoC implementation starting [https://github.com/logos-co/nomos-node/pull/302] -- Implementation of mixnode: a core module for implementing a mixnode binary -- Implementation of mixnet-client: a client library for mixnet users, such as nomos-node - -### **Private PoS** -- No progress this week. - ---- -## **Data Availability** -### Research -- Continued analysis of node decay in data availability problem -- Improved upper bound on the probability of the event that data is no longer available given by the (K,N) erasure ECC scheme [https://www.overleaf.com/read/gzqvbbmfnxyp] - -### Development -- Library survey: Library used for the benchmarks is not yet ready for requirements, looking for alternatives -- RS & KZG benchmarking for our use case https://www.notion.so/2D-Reed-Solomon-Encoding-KZG-Commitments-benchmarking-b8340382ecc741c4a16b8a0c4a114450 -- Study documentation on Danksharding and set of questions for Leonardo [https://www.notion.so/2D-Reed-Solomon-Encoding-KZG-Commitments-benchmarking-b8340382ecc741c4a16b8a0c4a114450] - ---- -## **Testing, CI and Simulation App** - -### Development -- Sim fixes/improvements [https://github.com/logos-co/nomos-node/pull/299], [https://github.com/logos-co/nomos-node/pull/298], [https://github.com/logos-co/nomos-node/pull/295] -- Simulation app and instructions shared [https://github.com/logos-co/nomos-node/pull/300], [https://github.com/logos-co/nomos-node/pull/291], [https://github.com/logos-co/nomos-node/pull/294] -- CI: Updated and merged [https://github.com/logos-co/nomos-node/pull/290] -- Parallel node init for improved simulation run times [https://github.com/logos-co/nomos-node/pull/300] -- Implemented branch overlay for simulating 100K+ nodes [https://github.com/logos-co/nomos-node/pull/291] -- Sequential builds for nomos node features updated in CI [https://github.com/logos-co/nomos-node/pull/290] \ No newline at end of file diff --git a/content/nomos/updates/2023-08-21.md b/content/nomos/updates/2023-08-21.md deleted file mode 100644 index 82cf85073..000000000 --- a/content/nomos/updates/2023-08-21.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: 2023-08-21 Nomos weekly -tags: - - nomos-updates -date: 2023-08-21 -lastmod: 2023-09-04 -draft: false ---- -## Nomos weekly report 21st Oct - -(delayed as I was on holidays and then took me some time to clarify some things with the team) - -### Network Privacy and Mixnet - -- Improved the mixnet implementation based on latest discussion. https://github.com/logos-co/nomos-node/pull/307 -- Base implementation of Mixnet PoC: https://github.com/logos-co/nomos-node/pull/302 -- Refactor to encapsulate message body creation&write&read: https://github.com/logos-co/nomos-node/pull/308 -- New issues related to mixnet: https://github.com/logos-co/nomos-node/issues?q=is%3Aopen+is%3Aissue+label%3Amixnet - -### Private PoS - -- Updated draft addressing comments related to shielded and transparent transaction types. -- Defined an opportunistic voting problem. -- Continuing analysis on zCash transaction's construction. -- This is currently the project that is going slowest and needs more attention going forward. It's also the most complex and with the most unknowns. - -### Simulations app - -- Graceful shutdown of simulations. -- Created a new repository for simulations configurations and test results: https://github.com/logos-co/nomos-simulations -- Updates and discussed test runs: https://github.com/logos-co/nomos-simulations/pull/3 -- Changes to support CSV format output of simulation data: https://github.com/logos-co/nomos-node/pull/304 and https://github.com/logos-co/nomos-node/pull/306 -- Minor issue on integration tests fixed: https://github.com/logos-co/nomos-node/pull/315 - -### Data Availability Sampling - -- Studied RS+KZG in context of our DA architecture. -- RS: basic encoding/decoding lib. Created a basic wrapper around reed-solomon-encoding library to work with arbitrary bytearrays with the simples API possible. Created basic tests and docs as well. -- KZG: basic commitment + proof creation, also proof verification lib. Same here, created a simplistic API that abstract from the confusing types in the underlaying used library. -- Created a simplistic API for RS: https://github.com/logos-co/nomos-node/pull/303 -- Created a simplistic API for KZG: https://github.com/logos-co/nomos-node/pull/309 \ No newline at end of file diff --git a/content/nomos/updates/2023-08-29.md b/content/nomos/updates/2023-08-29.md deleted file mode 100644 index e95852ec8..000000000 --- a/content/nomos/updates/2023-08-29.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: 2023-08-29 Nomos weekly -tags: - - nomos-updates -date: 2023-09-04 -lastmod: 2023-09-04 -draft: false ---- -## **Nomos weekly report** - -### Milestone 1: Network Privacy and Mixnet - -#### **Research** -- A Mixnet PoC was conducted to gauge end-to-end latency, revealing a slight latency increase when utilizing mixnet. Several potential optimization areas have been identified. - -#### **Development** -- Various enhancements for the Mixnet have been developed, including the addition of delays for Sphinx packets, auto port for integration tests, and introducing a graceful shutdown for mixnode elements. -- There's an ongoing shift from channels to streams in mixnet message handling. -- Refactoring of Mixnet Node & Client: https://github.com/logos-co/nomos-node/pull/320 -- Mixnet PoC Architecture Documents: https://www.notion.so/Mixnet-and-Network-Privacy-Architecture-613f53cf11a245098c50af6b191d31d2 -- Mixnet Measurements Documentation: https://www.notion.so/Mixnet-Measurements-551ade11ae4d44ca9f3d947ea6950c67 -- Sphinx Packet Delay Support: https://github.com/logos-co/nomos-node/pull/321 -- Auto Port for Tests: https://github.com/logos-co/nomos-node/pull/327 -- Mixnet Criterion Measurement: https://github.com/logos-co/nomos-node/pull/328 -- Graceful Shutdown for Mixnet: https://github.com/logos-co/nomos-node/pull/330 - ---- - -### Milestone 2: Private PoS - -#### **Research** -- Discussions were held about token-engineering and staking in private settings, resulting in documentation that delves into the validation and delegation aspects of PPoS. Current considerations involve the integration of the ZeroCash/zCash construction into the staking model. - ---- -### Milestone 3: Data Availability Sampling (RS, KZG) - -#### **Research** -- Limitations discovered during RS and KZG implementation, notably with RS library scalability issues and bls12_381 curve finite field challenges. Found KZG libraries are primarily designed for Ethereum, which constrains the blob size. -- Benchmarks for KZG implementation were carried out, and simulation runs were conducted for different configurations. -- Node decay in relation to data availability was analyzed, leading to the derivation of an equation for understanding node averages in the network. -#### **Development** -- KZG Library: https://github.com/logos-co/nomos-node/pull/325 -- KZG Base Layer initial approach: https://github.com/logos-co/nomos-node/pull/309 -- Detailed KZG Operation Benchmarks: https://github.com/logos-co/nomos-node/tree/da-kzg-benches -- Node Decay Analysis & Results: https://www.overleaf.com/read/gzqvbbmfnxyp \ No newline at end of file diff --git a/content/nomos/updates/2023-09-04.md b/content/nomos/updates/2023-09-04.md deleted file mode 100644 index f18201e30..000000000 --- a/content/nomos/updates/2023-09-04.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: 2023-09-04 Nomos weekly -tags: - - nomos-updates -date: 2023-09-04 -lastmod: 2023-09-04 -draft: false ---- -## `nomos:` ---- - -### `network privacy and mixnet:` - -#### `research` - -- No specific research tasks reported this week related to this milestone. - -#### `development` - -- Made mixnet tests stable: https://github.com/logos-co/nomos-node/pull/334 -- Finished the delay implementation: https://github.com/logos-co/nomos-node/pull/362 -- Migrated the mixnode binary to Overwatch for better integration: https://github.com/logos-co/nomos-node/pull/339 -- Added a retry mechanism to the libp2p backend for transient errors: https://github.com/logos-co/nomos-node/pull/332 -- Fixed network tests failing with mixnet: https://github.com/logos-co/nomos-node/pull/338 -- Fix panic for RandomDelayIter: https://github.com/logos-co/nomos-node/pull/335 -- Connection cache for mixnet: https://github.com/logos-co/nomos-node/pull/343 -- Implemented mempool network adapters for libp2p: https://github.com/logos-co/nomos-node/pull/344 -- Implemented the libp2p version of the addtx endpoint: https://github.com/logos-co/nomos-node/pull/345 - ---- -### `testnet:` - -#### `development:` - -- POC/Draft for testnet using Docker Compose: https://github.com/logos-co/nomos-node/pull/364 -- DNS Multiaddr parsing and peer id configuration: https://github.com/logos-co/nomos-node/pull/346, https://github.com/logos-co/nomos-node/pull/361 - ---- -### `private PoS:` - -#### `research:` - -- Introduced the Base Design section, focusing on the ZCash design's constructions, building an understanding of the data structures and algorithms, and presenting relevant algorithms with comprehensive descriptions. -- Developed the Staking Extension section, leveraging Base Design constructions to introduce staking mechanics, defining the "Stake" algorithm that transforms shielded coins into voting "staking coins", and the "Reward" algorithm that distributes rewards and restakes coins back into the pool. -- Created the Consensus Modifications section, detailing modifications to the Carnot Consensus algorithm based on the Staking Extension, introducing mapping of staking coins to validator "shadows", presenting the initial voting construction, introducing a vote aggregation mechanism, and elaborating on vote dissemination and aggregation through a tree overlay. - ---- -### `data availability:` - -#### `research:` - -- Studied more options for DA verification schemes: https://www.notion.so/Data-Availability-Specification-WIP-c3961b681eba4ccdab2be9181e4207b4 -- Reached some conclusions that allow us to make progress in implementing the architecture. Blocker: we need specialized cryptographic expertise to make further progress on this. I will personally keep working on it later on, but privacy matters are more important now as they have a higher impact on the architecture. -- Analysis of node decay in the data availability problem is complete: https://www.overleaf.com/read/gzqvbbmfnxyp - -#### `development:` - -- Included BL blobs in the block: https://github.com/logos-co/nomos-node/pull/368 \ No newline at end of file diff --git a/content/nomos/updates/2023-09-11.md b/content/nomos/updates/2023-09-11.md deleted file mode 100644 index 504f7ffe7..000000000 --- a/content/nomos/updates/2023-09-11.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: 2023-09-11 Nomos weekly -tags: - - nomos-updates -date: 2023-09-11 -lastmod: 2023-09-27 -draft: false -description: 2023-09-11 Weekly update of Nomos ---- -## `nomos:` ---- - -### `network privacy and mixnet:` - -#### `research:` - -- Revised mathematical methods, such as the Poisson point process, etc., used in analysis of mixnets. -- Explored literature related to mixnets where approaches from differential privacy are used. The latter could lead to a more general privacy guarantee which is relevant to not only current but also future attacks on privacy. - -#### `development:` - -- Fixed a bug in the connection pool implementation https://github.com/logos-co/nomos-node/pull/373 -- Fixed Cargo.toml for nomos-network https://github.com/logos-co/nomos-node/pull/380 -- Added defaults to libp2p settings https://github.com/logos-co/nomos-node/pull/388 -- Fixed request handling in mixnode: https://github.com/logos-co/nomos-node/pull/372 -- Added benchmark code (in localhost): https://github.com/logos-co/nomos-node/pull/375 -- After trying to find existing solutions to routing strategies (routing first, privacy later), and not finding a proper solution, moved to thinking about a naive approach: https://www.notion.so/WIP-Proposal-Routing-7b034dcac64940eda25ee415806d0ec8 -- Found using sync Mutex will lead to a block. https://github.com/logos-co/nomos-node/pull/370 -- Finish implementing the first version of retry for mixnode and mixclient https://github.com/logos-co/nomos-node/pull/386 - ---- -### `testnet:` - -#### `development:` - -- Node config via environment variables: https://github.com/logos-co/nomos-node/pull/382 -- Observability and node configuration in testnet work in progress: https://github.com/logos-co/nomos-node/pull/364 (Same draft PR as last week WIP). -- Resolving more GH Actions related issues: - - https://github.com/logos-co/nomos-node/pull/385 - - https://github.com/logos-co/nomos-node/pull/389 - ---- -### `private PoS:` - -#### `research:` - -- Found an issue in vote propagation of the PPoS construction: When a vote is propagated upstream to the higher committee there is a chance that a malicious shadow in committee decides not to broadcast their vote to the committee members and send it only upstream. Then this "unseen" vote will block the possibility of reconstructing the most common committee_vote, and at the same time prove that other shadows have voted. The solution for that is to propagate a map of seen votes upstream alongside the vote, this enables the higher committee to select only the votes that are most commonly seen for building the committee_vote thus making that kind of malicious behavior detectable. -- Improving the PPoS description: working on selecting proper naming conventions, as currently there are voters, shadows, coins which are confusing. That is done in pair with revising the logic. - ---- -### `data availability:` - -#### `research:` - -- A draft for private DA can be found here: https://www.notion.so/Data-Availability-Specification-c3961b681eba4ccdab2be9181e4207b4?d=d4e8d1bcd6224682ba74737100106e48#0c70202794214cbab626e51f7f1f7c24 - - -#### `development:` - -- Blobs in block: https://github.com/logos-co/nomos-node/pull/368 -- DA service architecture: https://github.com/logos-co/nomos-node/pull/376 -- Da service backend implementation: https://github.com/logos-co/nomos-node/pull/381 \ No newline at end of file diff --git a/content/nomos/updates/2023-09-19.md b/content/nomos/updates/2023-09-19.md deleted file mode 100644 index 0ea7f3e04..000000000 --- a/content/nomos/updates/2023-09-19.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -title: 2023-09-19 Nomos weekly -tags: - - nomos-updates -date: 2023-09-19 -lastmod: 2023-09-26 -draft: false -description: 2023-09-19 Weekly update of Nomos ---- -## `nomos:` ---- - -### `network privacy and mixnet:` - -#### `research:` - -- Review of the “Untraceable electronic mail, return addresses, and digital pseudonyms” paper. Review of the “The Loopix anonymity system” paper. -- Notes provided in the overleaf document https://www.overleaf.com/read/rybwvjftfrrg - - -#### `development:` - -- Polishing mixnet to make it ready for the testnet: -- Helping preparing mixnet deployments: https://github.com/logos-co/nomos-node/pull/408 -- Reviewed mixnet connection management -- Refactor the libp2p network backend: https://github.com/logos-co/nomos-node/tree/libp2p-refactor-yjlee and based on that prepare to measure the quality of unobservability - https://github.com/logos-co/nomos-node/issues/391 -- Block building: https://github.com/logos-co/nomos-node/pull/401 -- Fountain codes: https://github.com/logos-co/nomos-node/pull/407 -- Got the mixnet retry PR merged: https://github.com/logos-co/nomos-node/pull/386 -- Finish the concrete error implementation for mixnet and ready for merge: https://github.com/logos-co/nomos-node/pull/405 -- WIP: fan-in message passing model for mixnode: https://github.com/logos-co/nomos-node/tree/mixnet-fan-in - ---- -### `testnet:` - -#### `development:` - -- Testnet preparation: https://github.com/logos-co/nomos-node/pull/410 -- Testnet POC with libp2p merged: https://github.com/logos-co/nomos-node/pull/364 -- The POC for testnet using etcd and docker compose was reviewed and merged. The mixnet functionality will be added on top of this. -- Simulation branch overlay with 1 committee fix: https://github.com/logos-co/nomos-node/pull/402 -- A bug where branch overlay results different from tree overlay with one committee blocked research team to use simulations results. Fixed it. -- Improvements in CI: - - https://github.com/logos-co/nomos-node/pull/409 - - https://github.com/logos-co/nomos-node/pull/411 - - https://github.com/logos-co/nomos-node/pull/412 -- Minor improvements to remove annoying red x's from our CI - ---- -### `private PoS:` - -#### `research:` - -- **Shadows logic:** Looking at how to describe the logic of the shadow in the most clear way: It will be divided into a set of modules, each module taking care of processing a separate communication channel. -- All channels have their logic described in adequate modules and with references to self-descripting functions. However, some of them (like how exactly to aggregate votes) must yet to be defined. -- **Hastiness issues:** In short, the leader, in order to limit the cost of vote aggregation can decide to not to include votes from top committees (and root in particular). This is an acceptable strategy and will lead to a correctly formed aggregation proof. The proof will include a global threshold of votes from lower committees but not from the top committees (and root committee in particular). The impact of this leader's hastiness does not break the security of the protocol as a threshold of votes is correctly gathered. However, it may limit rewards from the top committees (and root in particular), as the votes from those committees may not be needed to reach the threshold. More on that under the issues section of the PPoS doc. ---- -### `data availability:` - -#### `research:` - -- First stab at privacy solution for the network layer for consensus and DA: https://www.notion.so/Practical-Private-Addressing-Network-Privacy-Component-2-2b9b4923124a4fdb81dba5d2bba1d289?d=99166164267a46589c5715175e1b3657#5e27d2010d30468f9d8f0d0928b9c639 -- Init survey of SoA in network privacy alternative solutions - -#### `development:` - -- DA nomos core kickstart, added different pieces that were missing for abstractions: https://github.com/logos-co/nomos-node/pull/390 -- Added attestation trait -- Added certificate trait -- Added DaProtocol trait that abstracts encoding/decoding, and put the pieces together for blob+attestation+certificate handling. -- Refactored (moved and restructured) da modules -- Refactor and improve common traits - https://github.com/logos-co/nomos-node/pull/395 -- Implement a simple da protocol with full replication - https://github.com/logos-co/nomos-node/pull/400 -- Implement a command to disseminate blobs through the network - https://github.com/logos-co/nomos-node/pull/396 -- Added da-service to nomos node - https://github.com/logos-co/nomos-node/pull/404 -- Housekeeping: - - https://github.com/logos-co/nomos-node/pull/403 - - https://github.com/logos-co/nomos-node/pull/388 - - https://github.com/logos-co/nomos-node/pull/399 \ No newline at end of file diff --git a/content/nomos/updates/2023-09-26.md b/content/nomos/updates/2023-09-26.md deleted file mode 100644 index b3901b6c5..000000000 --- a/content/nomos/updates/2023-09-26.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: 2023-09-26 Nomos weekly -tags: - - nomos-updates -date: 2023-09-26 -lastmod: 2023-09-26 -draft: false -description: 2023-09-26 Weekly update of Nomos ---- -## `nomos:` ---- - -### `network privacy and mixnet:` - -#### `research:` - -- With the assumption that nodes of a mixnet are selected without replacement, we performed analysis with Byzantine node presence (for specific widths and lengths). This gives the probability that there is at least one path where all nodes are Byzantine (“anonymity” failure) -- Evaluation in the “Loopix” paper used the mixnet with n1=2 and L=5 -- Conclusion: probability of anonymity failure decreases when increasing length and increases with increasing width -- Notes provided in the overleaf document https://www.overleaf.com/read/rybwvjftfrrg -- Discussions on how to model the network privacy for analysis; viability of the embedded mixnet design -- Notes (WIP): https://www.notion.so/Network-Privacy-2dabf0aa878744e299b2ebb97120876f - -#### `development:` - -- Making integration tests work with FlatOverlay and RandomBeacon: - - https://github.com/logos-co/nomos-node/pull/425 - - https://github.com/logos-co/nomos-node/pull/426 -- Some integration tests are randomly failed. Debugging them: https://github.com/logos-co/nomos-node/pull/437 -- Refactoring libp2p network layer: https://github.com/logos-co/nomos-node/pull/417 -- Add missing error handlings in mixnet: https://github.com/logos-co/nomos-node/pull/436 (+ more coming soon) -- Trying to enable gathering metrics for libp2p (but needs to be discussed about how this can be used with our existing metrics service): https://github.com/logos-co/nomos-node/pull/431 -- New mixnet message handle PR: https://github.com/logos-co/nomos-node/pull/435 -- QC checks: https://github.com/logos-co/nomos-node/pull/430 - ---- -### `testnet:` - -#### `development:` - -- TreeOverlay in Nomos node: - - https://github.com/logos-co/nomos-node/pull/415 - - https://github.com/logos-co/nomos-node/pull/423 -- After adding tree overlay to Nomos node, integration tests started failing. Main reason was that the leader didn't spawn in time and nodes failed to send their votes. This mainly affected the happy path test. Work will be merged once the issues are fixed. -- Testnet with mixnode: WIP -- Work on the mixnet node in testnet continues. Ongoing inter-team discussions in regards to how we should monitor and extract info from the network. The PR for libp2p metrics might be the way to go. -- CI chores: https://github.com/logos-co/nomos-node/pull/432 - ---- -### `private PoS:` - -#### `research:` - -- Add missing function descriptions and finalize structure definitions. -- Defined/redefined structures used in all algorithms that required a rewrite. -- Updated the terminology and made the Shadows name obsolete, and now they are called Validators (for synchronization with other PoS designs). -- The validators logic was redesigned, improved and updated accordingly. -- The same was with the ledger/transactions part, and now they form a complete logic. -- Readability: the specification part was updated. The rest of the document is out of sync and needs to be revised as the focus was put on the specification. -- Critical analysis: an issue was identified and described (under the issues section) that touches on a problem where insufficient number of votes are aggregated and the need for an additional voting round before commencing an overlay tree reconstruction. This can be mitigated with an additional votes collection from late voters (before the tree timeout) or increased level of votes that are collected during initial voting collection. -- Review of the Delegation and Validation rewards document by Frederico. ---- -### `data availability:` - -#### `development:` - -- Dissemination ready - - https://github.com/logos-co/nomos-node/pull/416 - - https://github.com/logos-co/nomos-node/pull/400 - - https://github.com/logos-co/nomos-node/pull/404 -- Mempool for certificates in progress \ No newline at end of file diff --git a/content/nomos/updates/2023-10-09.md b/content/nomos/updates/2023-10-09.md deleted file mode 100644 index 1202e216b..000000000 --- a/content/nomos/updates/2023-10-09.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -title: 2023-10-09 Nomos weekly -tags: - - nomos-updates -date: 2023-10-09 -lastmod: 2023-10-10 -draft: false -description: Weekly update of ---- -## `nomos:` ---- -### network privacy and mixnet: - -#### :research - -- Derived asymptotic expressions for anonymity and communication failure probabilities, when taking into account certain values for population size and network size. Used simulations and analytic framework to study failure probabilities in mixnets of different sizes. Assuming delays between sending and receiving messages are independent random variables from the exponential distribution, derived probability distribution of latency. Main result: one cannot have both low probability of communication and low probability of anonymity failures. The probability of anonymity failure is decreasing with the number of layers but at the expense of increasing the latency. -- Finalize research of network-level privacy solutions. Learned important information on: Framework for formalizing privacy, Nym and tokenomics of a Mixnet, Sphinx, and Loopix. Notes found at: https://www.notion.so/Network-Privacy-2dabf0aa878744e299b2ebb97120876f (summaries still WIP). - -#### :development - -- Lock Overwatch to a specific revision in nomos: https://github.com/logos-co/nomos-node/pull/455. -- Implement and pipe services lifecycle handling in Overwatch: https://github.com/logos-co/Overwatch/pull/27. -- Bash is being replaced with python due to adding mixnet to docker. At the moment, small issues with node spawning order are being resolved (for tree overlay). ETA on finishing: beginning of this week. -- Add API to return mempool item status: https://github.com/logos-co/nomos-node/pull/449. -- Make libp2p gossipsub settings configurable: https://github.com/logos-co/nomos-node/pull/454. -- Avoid temporary gossipsub errors when bootstrapping tests: https://github.com/logos-co/nomos-node/pull/442. - -### testnet: - -#### development: - -- Skeleton for nomos API service - https://github.com/logos-co/nomos-node/pull/451. -- Support generics for overwatch derive - https://github.com/logos-co/Overwatch/pull/26. -- Fix clippy warnings for rust 1.73 - https://github.com/logos-co/nomos-node/pull/452. -- Remove waku mentions from codebase - https://github.com/logos-co/nomos-node/pull/446. -- Improved integration tests. -- Handle corner cases in the unhappy path: https://github.com/logos-co/nomos-node/pull/438. -- Add canonical ID to attestations and certificates: https://github.com/logos-co/nomos-node/pull/448. -- Add functionalities to nomos-cli: https://github.com/logos-co/nomos-node/pull/450. - -### private PoS: - -#### research: - -- Exploring multi-staking PPoS design for Carnot. -- Idea: a slightly modified version of PoS, unknown how much funds a single validator has and validators are grouped by the amount of stake they have. This property gives validators group-based k-anonymity, where they are indistinguishable (on the stake level). This also enables us to assign the same voting power per each group of validators, which then can be reflected on the overlay structure. -- Considering a couple of additional stake hiding/obfuscating techniques without making the initial design too complex. We incentivize/penalize validators based not on the voting power they represent but on the stake. We can have a system that diverges from an equality between voting power and stake, to a system that approximates the voting power based on the stake but the rewarding/penalization directly follows the stake. - -### data availability: - -#### development: - -- DA nomos API based on the new skeleton: https://github.com/logos-co/nomos-node/pull/456. -- Add API to return DA blobs: https://github.com/logos-co/nomos-node/pull/453. \ No newline at end of file diff --git a/content/nomos/updates/2023-10-23.md b/content/nomos/updates/2023-10-23.md new file mode 100644 index 000000000..ee96ba7a1 --- /dev/null +++ b/content/nomos/updates/2023-10-23.md @@ -0,0 +1,69 @@ +--- +title: 2023-10-23 Nomos weekly +tags: + - nomos-updates +date: 2023-10-23 +lastmod: 2023-10-25 +draft: false +description: 2023-10-23 Weekly update of Nomos +--- +## `nomos:` +--- + +### `network privacy and mixnet:` + +#### `research:` + +- Set up a calculation for the probability of anonymity (communication) failure in the mix network of a large size, sampled from a large population of nodes, such that mix network size is comparable with the node population size. The latter is the most challenging regime to analyse but potentially can give us much more accurate estimates of probabilities. Previously we have analysed regimes when mix network size is much smaller than network size and when all nodes in the network are also used in the mix network. +- Notes on “Anonymity Trilemma: Strong Anonymity, Low Bandwidth Overhead, Low Latency - Choose Two” paper provided in the overleaf document. https://www.overleaf.com/read/rybwvjftfrrg ; The latter derives necessary conditions for anonymous communication in terms of latency, amount of noise messages and some measure of anonymity. + +#### `development:` + +- Mixnet development specifications: went through the Loopix paper again - writing the draft specs: https://www.notion.so/WIP-Mixnet-Development-Specifications-807b624444a54a4b88afa1cc80e100c2 (covering the current Loopix-based implementation + Future work: cover traffic, multicasting (TBD), incentivization (TBD)) + +--- +### `testnet:` + +#### `development:` + +- Save block contents to storage - https://github.com/logos-co/nomos-node/pull/464 +- Refactoring for future content - https://github.com/logos-co/nomos-node/pull/461 +- Services state watchers - added a first version so overwatch can await for other services signal that they are ready to work. First version using relay did not work (among other things, too complicated). Second version uses an additional handle per service, it is mores traight forward. It may add more intricate relationship among services, and they cannot be handled/caught on runtime. Testing only for now. +- Failing services status PR: https://github.com/logos-co/Overwatch/pull/29 +- Working services status PR: https://github.com/logos-co/Overwatch/pull/30 +- Update lifecycle handling: https://github.com/logos-co/nomos-node/pull/457 +- Generics metrics API: https://github.com/logos-co/nomos-node/pull/466 +- Human readable ser/deser for array based types: https://github.com/logos-co/nomos-node/pull/468 +- Update libp2p breaking changes: https://github.com/logos-co/nomos-node/pull/470 +- Finished mixnodes in docker testnet: + - https://github.com/logos-co/nomos-node/pull/467 + - The testnet in docker compose is now merged and has a README. There are still room for improvement, like spawning some nodes sequentially (like in https://github.com/logos-co/nomos-node/pull/425), but this will be solved in added in a new PRs or solved by other node improvements. +- Improvements for node config: + - https://github.com/logos-co/nomos-node/pull/460, + - https://github.com/logos-co/nomos-node/pull/471 + - These changes were required for spawning nodes in testnet, will be useful for our endusers too + +--- +### `private PoS:` + +#### `research:` + +- Single-staking - reviewed and updated the design up to the construction section. +- Multi-staking - all comments have been addressed, but new are coming. +- Right now we are investigating a scenario where we are limiting the amount of validators in the Single-Staking case by diverging from the requirement of having multiples of validators by removing the economical incentives. In other words, we are considering to allow registering validators that have at least a threshold of stake (that is or is not capped) and a single (unitary) voting power. This way we are limiting the economical need for having multiple validators hosted by a single node, and at the same time limiting the network overhead of the single-staking design. +- The "Delegation and Validation Rewards" document (WIP): https://www.notion.so/Delegation-and-Validation-Rewards-d4af3f87a0b240739ff99b15af11cb3f?pvs=4 +- Incorporating notes in the architecture whitepapers. These readings are not as deeply technical as papers, but more about understanding the directions currently explored at the edge of blockchain architectures (namely rollups, modular architectures and intent-centric architectures). +- Working on the problem of PPoS, one of the most critical points of focus right now, to have at least an understanding of the available options + +--- +### `data availability:` + +#### `research:` + +- Hyrax, Dory and Dark schemes were studied, comparisons here: https://www.notion.so/Polynomial-Commitment-Schemes-59bf8f6fe39840babe819c5c0a9628fc ; It was concluded that schemes with verifier time above logarithmic are not a good option for data availability. +- FRI is a structure that should be used not for now, (at this stage especially, due to large proof size - higher than KZG), but can be used for quantum resistance in the future. Here are some sources that say this can be used in later stages (the reasons are the same as ours). - https://scroll.io/blog/kzg#user-content-fn-6 and https://notes.ethereum.org/@vbuterin/proto_danksharding_faq#Why-use-the-hash-of-the-KZG-instead-of-the-KZG-directly + +--- +### `miscellaneous:` + +- David Rusu has joined - warm welcome to him! \ No newline at end of file diff --git a/content/nomos/updates/index.md b/content/nomos/updates/index.md deleted file mode 100644 index 6b2251146..000000000 --- a/content/nomos/updates/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: Nomos Weekly Updates ---- -These are all the Nomos weekly updates that are reported to Logos Insight team. diff --git a/content/private/quartz/layout.md b/content/private/quartz/layout.md deleted file mode 100644 index 8a74b9119..000000000 --- a/content/private/quartz/layout.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: Layout ---- - -Certain emitters may also output [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML) files. To enable easy customization, these emitters allow you to fully rearrange the layout of the page. The default page layouts can be found in `quartz.layout.ts`. - -Each page is composed of multiple different sections which contain `QuartzComponents`. The following code snippet lists all of the valid sections that you can add components to: - -```typescript title="quartz/cfg.ts" -export interface FullPageLayout { - head: QuartzComponent // single component - header: QuartzComponent[] // laid out horizontally - beforeBody: QuartzComponent[] // laid out vertically - pageBody: QuartzComponent // single component - left: QuartzComponent[] // vertical on desktop, horizontal on mobile - right: QuartzComponent[] // vertical on desktop, horizontal on mobile - footer: QuartzComponent // single component -} -``` - -These correspond to following parts of the page: - -![[quartz layout.png|800]] - -> [!note] -> There are two additional layout fields that are _not_ shown in the above diagram. -> -> 1. `head` is a single component that renders the `` [tag](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head) in the HTML. This doesn't appear visually on the page and is only is responsible for metadata about the document like the tab title, scripts, and styles. -> 2. `header` is a set of components that are laid out horizontally and appears _before_ the `beforeBody` section. This enables you to replicate the old Quartz 3 header bar where the title, search bar, and dark mode toggle. By default, Quartz 4 doesn't place any components in the `header`. - -Quartz **components**, like plugins, can take in additional properties as configuration options. If you're familiar with React terminology, you can think of them as Higher-order Components. - -See [a list of all the components](./tags/component) for all available components along with their configuration options. You can also checkout the guide on [[creating components]] if you're interested in further customizing the behaviour of Quartz. - -### Style - -Most meaningful style changes like colour scheme and font can be done simply through the [[configuration#General Configuration|general configuration]] options. However, if you'd like to make more involved style changes, you can do this by writing your own styles. Quartz 4, like Quartz 3, uses [Sass](https://sass-lang.com/guide/) for styling. - -You can see the base style sheet in `quartz/styles/base.scss` and write your own in `quartz/styles/custom.scss`. - -> [!note] -> Some components may provide their own styling as well! For example, `quartz/components/Darkmode.tsx` imports styles from `quartz/components/styles/darkmode.scss`. If you'd like to customize styling for a specific component, double check the component definition to see how its styles are defined. diff --git a/content/tags copy/vac-updates.md b/content/tags copy/vac-updates.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/tags copy/component.md b/content/tags/component.md similarity index 100% rename from content/tags copy/component.md rename to content/tags/component.md diff --git a/content/templates/post.md b/content/templates/post.md deleted file mode 100644 index c2a9b3376..000000000 --- a/content/templates/post.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: "{{title}}" ---- diff --git a/content/templates/update-template.md b/content/templates/update-template.md deleted file mode 100644 index d0d710ff7..000000000 --- a/content/templates/update-template.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "<% tp.date.now() %> weekly" -tags: - - "-updates" -date: <% tp.date.now() %> -lastmod: <% tp.date.now() %> -draft: false -description: "Weekly update of " ---- - diff --git a/content/terms-of-use.md b/content/terms-of-use.md deleted file mode 100644 index 1c4032600..000000000 --- a/content/terms-of-use.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: Website Terms of Use ---- -These terms and conditions (“Website Terms of Use”) are entered into by you and us, and they govern your access and use of the Website, including any content and functionality contained in the Website.  - -It is your responsibility to read the Website Terms of Use carefully before your use of the Website and your use of the Website means you have agreed to be bound and comply with these Website Terms of Use.  - -If you do not agree with these Website Terms of Use, you must not access or use the Website.  - -## Disclaimers - -The Website is provided by us on an ‘as is’ basis and you use the Website at your own sole discretion and risk. - -We disclaim all warranties of any kind, express or implied, including without limitation the warranties of merchantability, fitness for a particular purpose, and non-infringement of intellectual property or other violation of rights. We do not warrant or make any representations concerning the completeness, accuracy, legality, utility, reliability, suitability or availability of the use of the Website, the content on this Website or otherwise relating to the Website, such content or on any sites linked to this site.These disclaimers will apply to the maximum extent permitted by applicable law.  - -We make no claims that the Website or any of its content is accessible, legally compliant or appropriate in your jurisdiction. Your access or use of the Website is at your own sole discretion and you are solely responsible for complying with any applicable local laws.  - -The content herein or as accessible through this Website is intended to be made available for informational purposes only and should not be considered as creating any expectations or forming the basis of any contract, commitment or binding obligation with us. No information herein shall be considered to contain or be relied upon as a promise, representation, warranty or guarantee, whether express or implied and whether as to the past, present or the future in relation to the projects and matters described herein. - -The information contained herein does not constitute financial, legal, tax, or other advice and should not be treated as such.  - -Nothing in this Website should be construed by you as an offer to buy or sell, or soliciting any offer to buy or sell any tokens or any security.  - -## Forward looking statements - -The Website may (or as made accessible through this Website) also contain forward-looking statements that are based on current expectations, estimates, forecasts, assumptions and projections about the technology, industry and markets in general. - -The forward looking statements, which may include statements about the roadmap, project descriptions, technical details, functionalities, features, the development and use of tokens by projects, and any other statements related to such matters are subject to a high degree of risk and uncertainty. The forward looking statements are subject to change and are based on, among other things, market conditions, technical developments, and regulatory environment. The actual development and results, including the order and the timeline, might vary from what is presented. The information contained on this Website is a summary and does not purport to be accurate, reliable or complete and we bear no responsibility for the accuracy, reliability or completeness of information contained herein. Because of the high degree of risk and uncertainty described above, you should not place undue reliance on any matters described in this website or as accessible through this Website. - -While we aim to update our website regularly, all information, including the timeline and the specifics of each stage, is subject to change and may be amended or supplemented at any time, without notice and at our sole discretion. - -## Intellectual property rights - -The Website and its contents are made available under free and open source licences. This means that anyone can use, share, and modify such content, as long as they follow the terms of the applicable licence.  - -## Third party website links - -To the extent the Website provides any links to a third party website, then their terms and conditions, including privacy policies, govern your use of those third party websites. We have no control over such third party websites and will not be liable for your use of or activities on any third party websites accessed through the Website. If you access such third party websites through the Website, it is at your own risk and you are solely responsible for your activities on such third party websites.  - -The Website may embed videos from Youtube, a service provided by Google LLC, using Youtube’s privacy-enhanced mode. When you interact with such videos, Youtube may place cookies on your personal device. The cookies do not directly identify individual users and YouTube will not store information to personalise your experience unless you are logged in to a Google account. We do not have any control over these cookies set by Youtube and it is recommended that you review YouTube’s embedding videos information page.  - -## Limitation of liability - -We will not be held liable to you under any contract, negligence, strict liability, or other legal or equitable theory for any lost profits, cost of procurement for substitute services, or any special, incidental, or consequential damages related to, arising from, or in any way connected with these Website Terms of Use, the Website, the content on the Website, or your use of the Website, even if we have been advised of the possibility of such damages. In any event, our aggregate liability for such claims is limited to EUR 100 (one hundred Euros). This limitation of liability will apply to the maximum extent permitted by applicable law. - -## Indemnity  - -You shall indemnify us and hold us harmless from and against any and all claims, damages and expenses, including attorneys’ fees, arising from or related to your use of the Website, the content on the Website, including without limitation your violation of these Website Terms of Use.  - -## Modifications - -We may modify or replace any part of this Website Terms of Use at any time and without notice. You are responsible for checking the Website periodically for any changes. The new Website Terms of Use will be effective immediately upon its posting on the Website. - -## Governing law - -Swiss law governs these Website Terms of Use and any disputes between you and us, whether in court or arbitration, without regard to conflict of laws provisions. - -## Disputes - -In these terms, “dispute” has the broadest meaning enforceable by law and includes any claim you make against or controversy you may have in relation to these Website Terms of Use, the Website, the content on the Website, or your use of the Website  - -We prefer arbitration over litigation as we believe it meets our principle of resolving disputes in the most effective and cost effective manner. You are bound by the following arbitration clause, which waives your right to litigation and to be heard by a judge. Please note that court review of an arbitration award is limited. You also waive all your rights to a jury trial (if any) in any and all jurisdictions.  - -If a (potential) dispute arises, you must first use your reasonable efforts to resolve it amicably with us. If these efforts do not result in a resolution of such dispute, you shall then send us a written notice of dispute setting out (i) the nature of the dispute, and the claim you are making; and (ii) the remedy you are seeking.  - -If we and you are unable to further resolve this dispute within sixty (60) calendar days of us receiving this notice of dispute, then any such dispute will be referred to and finally resolved by you and us through an arbitration administered by the Swiss Chambers’ Arbitration Institution in accordance with the Swiss Rules of International Arbitration for the time being in force, which rules are deemed to be incorporated herein by reference. The arbitral decision may be enforced in any court. The arbitration will be held in Zug, Switzerland, and may be conducted via video conference virtual/online methods if possible. The tribunal will consist of one arbitrator, and all proceedings as well as communications between the parties will be kept confidential. The language of the arbitration will be in English. Payment of all relevant fees in respect of the arbitration, including filing, administration and arbitrator fees will be in accordance with the Swiss Rules of International Arbitration.  - -Regardless of any applicable statute of limitations, you must bring any claims within one year after the claim arose or the time when you should have reasonably known about the claim. You also waive the right to participate in a class action lawsuit or a classwide arbitration against us.  - -## About these Website Terms of Use - -These Website Terms of Use cover the entire agreement between you and us regarding the Website and supersede all prior and contemporaneous understandings, agreements, representations and warranties, both written and oral, with respect to the Website.  - -The captions and headings identifying sections and subsections of these Website Terms of Use are for reference only and do not define, modify, expand, limit, or affect the interpretation of any provisions of these Website Terms of Use.  - -If any part of these Website Terms of Use is held invalid or unenforceable, that part will be severable from these Website Terms of Use, and the remaining portions will remain in full force and effect. If we fail to enforce any of these Website Terms of Use, that does not mean that we have waived our right to enforce them. \ No newline at end of file diff --git a/content/vac/acz/index.md b/content/vac/acz/index.md deleted file mode 100644 index a704b5739..000000000 --- a/content/vac/acz/index.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: Applied Cryptography and Zero-knowledge Service Unit -tags: -- acz -- vac -date: 2023-09-12 -lastmod: 2023-09-18 ---- - -## `vac:acz:` ---- - -### `rlnp2p:waku:` -* [x] [[vac/acz/rlnp2p/waku/production-readiness|production-readiness]] -* [x] [[vac/acz/rlnp2p/waku/rln-membership-management|rln-membership-management]] -* [x] [[vac/acz/rlnp2p/waku/rln-relay-enhancements|rln-relay-enhancements]] -* [[vac/acz/rlnp2p/waku/rln-relay-enhancements_02|rln-relay-enhancements_02]] -* [[vac/acz/rlnp2p/waku/rln-relay-erc20|rln-relay-erc20]] -* [[vac/acz/rlnp2p/waku/rlnv2-relay-integration|rlnv2-relay-integration]] -* [[vac/acz/rlnp2p/waku/rln-multi-epoch-constraints|rln-multi-epoch-constraints]] - -### `rlnp2p:vac:` -* [[vac/acz/rlnp2p/vac/rln-doc-and-outreach|rln-doc-and-outreach]] - -### `zerokit:vac:` -* [x] [[vac/acz/zerokit/vac/zerokit-v0-4|zerokit-v0.4]] -* [[vac/acz/zerokit/vac/zerokit-v0-5|zerokit-v0.5]] -* [[vac/acz/zerokit/vac/maintenance|maintenance]] - -### `secure-channels:waku:` -* [[vac/acz/secure-channels/waku/ethereum-chat|ethereum-chat]] diff --git a/content/vac/acz/rlnp2p/vac/rln-doc-and-outreach.md b/content/vac/acz/rlnp2p/vac/rln-doc-and-outreach.md deleted file mode 100644 index 8c54cc490..000000000 --- a/content/vac/acz/rlnp2p/vac/rln-doc-and-outreach.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "RLN Doc and Outreach" ---- -## `vac:acz:rlnp2p:vac:rln-doc-and-outreach` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - RLN doc and outreach: done, 2023-01-20, 2023-07-31 -``` - -- status: 0% -- CC: Aaryamann - -### Description - -* Waku doc: How can a user setup Waku + RLN? - - even though Waku RLN does not support slashing yet, we can see RLN as that provides an additional datapoint regarding message validity -* doc explaining how the components of RLN (zerokit, contract, and a project using it, e.g. Waku, work together) - - this can be in notion at first -* rlog post based on the two points above -* talk @ progcrypto and logos event in Istanbul (co-located with devconnect) - -### Justification - - -### Deliverables - - - diff --git a/content/vac/acz/rlnp2p/waku/production-readiness.md b/content/vac/acz/rlnp2p/waku/production-readiness.md deleted file mode 100644 index aea2e2fda..000000000 --- a/content/vac/acz/rlnp2p/waku/production-readiness.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: "RLNP2P Waku Pruduction Readiness Details" ---- -## `vac:acz:rlnp2p::waku:production-readiness` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section rlnp2p-waku - Production Readiness :done, 2023-01-20, 2023-07-31 -``` -- due: 2023/07/31 -- status: 100% - -### Description -membership management is out of scope for this milestone - -### Deliverables -TBD diff --git a/content/vac/acz/rlnp2p/waku/rln-membership-management.md b/content/vac/acz/rlnp2p/waku/rln-membership-management.md deleted file mode 100644 index a3ffad072..000000000 --- a/content/vac/acz/rlnp2p/waku/rln-membership-management.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Waku RLN Membership Management Details ---- -## `vac:acz:rlnp2p::waku:rln-membership-management` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section rlnp2p-waku - RLN Membership Management :done, 2023-01-20, 2023-09-30 -``` -- due: 2023/09/30 -- status: 100% - -### Description -Enhancing the first simple CC membership list - -### Risks -- depends on input from [[waku/index|Waku]] - -### Info - -#### 2023/09/04 - 2023/09/11 - -* added documentation for rln_keystore_generator - https://github.com/waku-org/nwaku/pull/1993 - -#### 2023/08/28 - 2023/09/04 - -* fixed makefile target for rln_keystore_generator - https://github.com/waku-org/nwaku/pull/1960 -* log the membership index out upon registration in the rln_keystore_generator - https://github.com/waku-org/nwaku/pull/1963 - -#### 2023/08/21 - 2023/08/28 - -* Demo of rln_keystore_generator: https://github.com/waku-org/nwaku/pull/1956 -* Wrote a tool rln_keystore_generator - * https://github.com/waku-org/nwaku/pull/1925 - * https://github.com/waku-org/nwaku/pull/1928 - * https://github.com/waku-org/nwaku/pull/1931 diff --git a/content/vac/acz/rlnp2p/waku/rln-multi-epoch-constraints.md b/content/vac/acz/rlnp2p/waku/rln-multi-epoch-constraints.md deleted file mode 100644 index 03ae5a109..000000000 --- a/content/vac/acz/rlnp2p/waku/rln-multi-epoch-constraints.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "Multi Epoch Constraints" ---- -## `vac:acz:rlnp2p:waku:multi-epoch-constraints` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Multi epoch constraints: 2023-09-15, 2023-11-15 -``` - -- status: 0% -- CC: Ramses - -### Description - -Currently, RLN v1 allows for a fixed message rate of 1/msg per epoch while RLN v2 allows for n msgs/epoch. -The goal of this milestone is designing the key derivation and related cryptographic components for allowing several n msgs/epoch constraints. -For example: 24 msg / day && 1 msg/10 seconds. - -* the nullifier defined in the [RLN RFC](https://rfc.vac.dev/spec/32/#slashing-and-shamirs-secret-sharing) has to be adapted accordingly. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/acz/rlnp2p/waku/rln-relay-enhancements.md b/content/vac/acz/rlnp2p/waku/rln-relay-enhancements.md deleted file mode 100644 index cd902afe0..000000000 --- a/content/vac/acz/rlnp2p/waku/rln-relay-enhancements.md +++ /dev/null @@ -1,95 +0,0 @@ ---- -title: Waku RLN-RELAY Enhancements Details ---- - -## `vac:acz:rlnp2p::waku:rln-relay-enhancements` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section rlnp2p-waku - RLN-RELAY enhancements :, 2023-06-01, 2023-09-30 -``` -- due: 2023/09/30 -- status: 100% - -### Description -- simple membership management setup (fixed CC list) -- instruction on how to register to the membership set / setup up (for Waku CCs) - -#### Goal -Run RLN relay on the Waku production fleet. Waku CCs can use it - -### Info - -## 2023/09/04 - 2023/09/11 - -* if only one key exists in the keystore, use it - https://github.com/waku-org/nwaku/pull/1984 -* fix log levels for some logs - https://github.com/waku-org/nwaku/pull/1986 -* updated documentation for rln-relay - https://github.com/waku-org/nwaku/pull/1993 -* clean nullifier table every `MaxEpochGap` - https://github.com/waku-org/nwaku/pull/1994 -* created `rln_db_inspector` tool, allows inspection into merkle tree structure - https://github.com/waku-org/nwaku/pull/1999, https://github.com/waku-org/nwaku/pull/2012 -* fixed missing memberships between history sync and new memberships sync with @alrevuelta - https://github.com/waku-org/nwaku/pull/2015 -* remove `rln` from waku's experimental features - https://github.com/waku-org/nwaku/pull/2001 -* fix metric calculation for registered members - https://github.com/waku-org/nwaku/pull/2018 -* uups proxy for waku-rln-registry - https://github.com/waku-org/waku-rln-contract/pull/9 - -## 2023/08/28 - 2023/09/04 - -* rln was enabled by default in the Makefile - fixed - https://github.com/waku-org/nwaku/pull/1964 -* ordered pubsub validator execution - https://github.com/waku-org/nwaku/pull/1966 -* fixed deserialization of valid merkle roots - https://github.com/waku-org/nwaku/pull/1973 -* confirm that the fetched credential from the keystore is registered to the membership set - https://github.com/waku-org/nwaku/pull/1980 -* fixed makefile target for zerokit's `librln.a` - https://github.com/waku-org/nwaku/pull/1981 -* converted zero-based indexing to 1-based indexing on vacp2p/rln-contract - https://github.com/vacp2p/rln-contract/pull/28 -* downstreamed zero-based indexing to waku-org/waku-rln-contract - https://github.com/waku-org/waku-rln-contract/pull/8 - -* deployed new version of the registry contract on sepolia - `0xc04937d502E0ae671cedFC2A0BCD6692055520f3` - -#### 2023/08/21 - 2023/08/28 - -* tree metadata should include chainId and contractAddress - https://github.com/waku-org/nwaku/pull/1932 -* set flush_interval appropriately -https://github.com/waku-org/nwaku/pull/1933 -* integrate new WakuRlnRegistry contract - https://github.com/waku-org/nwaku/pull/1943 -* bump zerokit to v0.3.2 -* https://github.com/waku-org/nwaku/pull/1951 -* tree metadata should include window of roots - https://github.com/waku-org/nwaku/pull/1953 -* sync tree state from contract deployed block number - https://github.com/waku-org/nwaku/pull/1955 -* optimization to waku_keystore - https://github.com/waku-org/nwaku/pull/1956 -* fixed a forceProgression bug in the WakuRlnRegistry contract - https://github.com/waku-org/waku-rln-contract/pull/6 - -#### 2023/08/14 - 2023/08/21 -* rpc handler for waku rln relay - https://github.com/waku-org/nwaku/pull/1852 -* fixed ganache’s change in method to manage subprocesses, fixed timeouts related to it - https://github.com/waku-org/nwaku/pull/1913 -* should error out on rln-relay mount failure - https://github.com/waku-org/nwaku/pull/1904 -* fixed invalid start index being used in rln-relay - https://github.com/waku-org/nwaku/pull/1915 -* constrain the values that can be used as idCommitments in the rln-contract - https://github.com/vacp2p/rln-contract/pull/26 -* assist with waku-simulator testing -* remove registration capabilities from nwaku, it should be done out of band - https://github.com/waku-org/nwaku/pull/1916 -* add deployedBlockNumber to the rln-contract for ease of fetching events from the client - https://github.com/vacp2p/rln-contract/pull/27 - -#### 2023/08/07 - 2023/08/14 -* Created tracking issue to manage status of this milestone - https://github.com/waku-org/nwaku/issues/1906 - -#### 2023/07/31 - 2023/08/07 - -* [Waku RLN contract registry](https://github.com/waku-org/waku-rln-contract/pull/3) -* [Mark duplicated messages as spam](https://github.com/waku-org/nwaku/pull/1867) -* [Use `waku-org/waku-rln-contract` as a submodule in `nwaku`](https://github.com/waku-org/nwaku/pull/1884) - -### Deliverables - -* https://github.com/waku-org/nwaku/issues/1906 diff --git a/content/vac/acz/rlnp2p/waku/rln-relay-enhancements_02.md b/content/vac/acz/rlnp2p/waku/rln-relay-enhancements_02.md deleted file mode 100644 index 8ea0f3ad4..000000000 --- a/content/vac/acz/rlnp2p/waku/rln-relay-enhancements_02.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: Waku RLN-RELAY Enhancements 02 ---- - -## `vac:acz:rlnp2p::waku:rln-relay-enhancements` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section rlnp2p-waku - RLN-RELAY enhancements :, 2023-09-01, 2023-11-31 -``` - -- status: 0% -- CC: Aaryamann - -### Description - -* continuation of [[rln-relay-enhancements|rln-relay-enhancements]] -* comprises further enhancements of RLN relay, requested by the Waku team - -### Justification - -### Risks - -### Deliverables - - diff --git a/content/vac/acz/rlnp2p/waku/rln-relay-erc20.md b/content/vac/acz/rlnp2p/waku/rln-relay-erc20.md deleted file mode 100644 index dfed72ab1..000000000 --- a/content/vac/acz/rlnp2p/waku/rln-relay-erc20.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "RLN relay ERC20" -description: "ERC20 token support for RLN relay." ---- -## `vac:acz:rlnp2p:waku:rln-relay-erc20` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Production Readiness: , , -``` - -- status: 0% -- CC: Aaryamann - -### Description - -* future work - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/acz/rlnp2p/waku/rlnv2-relay-integration.md b/content/vac/acz/rlnp2p/waku/rlnv2-relay-integration.md deleted file mode 100644 index da8643a79..000000000 --- a/content/vac/acz/rlnp2p/waku/rlnv2-relay-integration.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "RLN v2 Waku Relay Integration" -description: "Integrating RLN v2 into Waku Relay." ---- -## `vac:acz:rlnp2p:waku:rlnv2-relay-integration` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - RLN v2 relay integration: 2023-11-01, 2024-02-29 -``` - -- status: 0% -- CC: Aaryamann - -### Description - -* also involves - - TKE - - implemenations in various Waku versions - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/acz/secure-channels/waku/ethereum-chat.md b/content/vac/acz/secure-channels/waku/ethereum-chat.md deleted file mode 100644 index 5b19ee1a1..000000000 --- a/content/vac/acz/secure-channels/waku/ethereum-chat.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "Ethereum Chat" ---- -## `vac:acz:secure-channels:waku:ethereum-chat` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Ethereum Chat: 2023-09-12, 2023-11-30 -``` - -- status: 0% -- CC: Ramses - -### Description - -The goal of this milestone is having - -* using the [noise](http://noiseprotocol.org/noise.html) framework -* Ethereum Wallet address used to derive authentication key for noise -* Design an Ethereum address-based 1:1 chat - - should be transport agnostic - - toy eth chat: https://rfc.vac.dev/spec/20/ - - this milestone requires forward secrecy (see limitations section of the toy eth chat RFC) - - consider using https://eips.ethereum.org/EIPS/eip-5564 -* Naive Groupchat functionality (using `n` 1:1 chat channels) -* involve metamask here (metamask im team) - -* a follow up milestone will cover running Ethereum chat on top of Waku -* follow up goal: develop this into an EIP - - - -### Justification - - -### Deliverables - -* specification (RFC) of a secure Ethereum-based chat protocol - - diff --git a/content/vac/acz/zerokit/vac/maintenance.md b/content/vac/acz/zerokit/vac/maintenance.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/acz/zerokit/vac/zerokit-v0-4.md b/content/vac/acz/zerokit/vac/zerokit-v0-4.md deleted file mode 100644 index 9ca4e7d22..000000000 --- a/content/vac/acz/zerokit/vac/zerokit-v0-4.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Zerokit v0.4 Release Details ---- -## `vac:acz:zerokit::vac:zerokit-v0.4` ---- -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section zerokit - v0.4 Release :done, 2023-01-20, 2023-09-07 -``` -- due: 2023/09/07 -- status: 100% - -### Description -- Release Planning - [Github Issue #197](https://github.com/vacp2p/zerokit/issues/197) - -### Deliverables - -* https://github.com/vacp2p/zerokit/releases/tag/v0.4.0 - -### Info - -## 2023/08/14 - 2023/08/21 - -* substitute id_commitments for rate_commitments and update tests in rln-v2 - https://github.com/vacp2p/zerokit/pull/205 -* rln-v2 working branch - https://github.com/vacp2p/zerokit/pull/204 - -## 2023/08/07 - 2023/08/14 - -* Serde api’s updated - https://github.com/vacp2p/zerokit/pull/202 - -## 2023/07/31 - 2023/08/07 - -* zerokit v0.4.0 release planning - https://github.com/vacp2p/zerokit/issues/197 diff --git a/content/vac/acz/zerokit/vac/zerokit-v0-5.md b/content/vac/acz/zerokit/vac/zerokit-v0-5.md deleted file mode 100644 index 1478a332e..000000000 --- a/content/vac/acz/zerokit/vac/zerokit-v0-5.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: Zerokit v0.5 Release ---- -## `vac:acz:zerokit::vac:zerokit-v0.5` ---- -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section zerokit - v0.5 Release: 2023-10-01, 2024-02-29 -``` -- status: 5% -- CC: Aaryamann - -### Description - -* Release Planning issue: - -* main focus: RLN performance improvements - - explore using kzg proofs - -### Deliverables - - -### Info - -* We have a benchmarking suite done diff --git a/content/vac/create_dirs.bash b/content/vac/create_dirs.bash deleted file mode 100644 index 8bc86af6a..000000000 --- a/content/vac/create_dirs.bash +++ /dev/null @@ -1,25 +0,0 @@ - -# DST - -mkdir -p dst/wakurtosis/waku && touch $_/techreport.md -mkdir -p dst/wakurtosis/waku && touch $_/techreport_02.md -mkdir -p dst/wakurtosis/waku && touch $_/gossipsub-topology-analysis.md -mkdir -p dst/wakurtosis/waku && touch $_/features.md -mkdir -p dst/wakurtosis/vac && touch $_/rlog.md -mkdir -p dst/wakurtosis/vac && touch $_/retrospective-rlog.md -mkdir -p dst/wakurtosis/nomos && touch $_/ci-integration.md -mkdir -p dst/wakurtosis/vac && touch $_/maintenance.md -mkdir -p dst/analysis/nomos && touch $_/nomos-simulation-analysis.md -mkdir -p dst/analysis-gsub-model/vac && touch $_/refactoring.md -mkdir -p dst/analysis-gsub-model/status && touch $_/control-messages.md -mkdir -p dst/analysis-shadow/vac && touch $_/shadow-gossipsub-analysis.md -mkdir -p dst/analysis-shadow/waku && touch $_/shadow-waku-relay-analysis.md -mkdir -p dst/eng/vac && touch $_/bundle-simulation-data.md -mkdir -p dst/eng-10ktool/vac && touch $_/bandwidth.md -mkdir -p dst/eng-10ktool/waku && touch $_/waku-protocols.md -mkdir -p dst/software-testing/waku && touch $_/test-plans.md -mkdir -p dst/software-testing/waku && touch $_/test-automation-js-waku.md -mkdir -p dst/software-testing/waku && touch $_/test-automation-nwaku.md -mkdir -p dst/software-testing/waku && touch $_/test-automation-go-waku.md -mkdir -p dst/software-testing/waku && touch $_/interop-testing.md - diff --git a/content/vac/dr/consensus/nomos/blockchain-security-in-crypto-economic-models.md b/content/vac/dr/consensus/nomos/blockchain-security-in-crypto-economic-models.md deleted file mode 100644 index 737494109..000000000 --- a/content/vac/dr/consensus/nomos/blockchain-security-in-crypto-economic-models.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Blockchain Security in Crypto-economic Models" ---- -## `vac:dr:consensus:vac:blockchain-security-in-crypto-economic-models` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Blockchain Security in Crypto-economic Models: 2023-11-01, 2024-02-29 -``` - -- status: 0% -- CC: Moh - -### Description - -This research will provide a comprehensive security analysis of Carnot under the Crypto Economic Model. -This is a new security model for distributed consensus algorithms in which economic attacks on the protocol will be considered. - - -### Justification - -The combination of PoS and distributed consensus, necessitates a new comprehensive security model for blockchain ecosystem. - -### Risks - -This is a new research direction. - -### Deliverables - -* conference paper - diff --git a/content/vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation.md b/content/vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation.md deleted file mode 100644 index 47241842e..000000000 --- a/content/vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: "Carnot 2/3 Vote aggregation" ---- -## `vac:dr:nomos:nomos:carnot-vote-2-3rds-vote-aggregation` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Carnot 2/3 Vote Aggregation: 2023-08-01, 2023-10-15 -``` - -- status: 20% -- CC: Moh - - -### Description - -This research will use the Carnot flexible design to make it collect more than 2/3rd of cryptographic proof of votes cast for a block. - -* write a research log post -* desciption of the solution - -* support by the DST team: [[ roadmap/vac/dst/dr-support/vac/carnot-2-3rds-executable-spec | carnot-2rds-executable-spec ]] - -### Risks - -Might slightly increase the protocol overhead. But we make sure this overhead is minimal. - -### Justification - - -### Deliverables - -* [x] Presentation slides (logos research) -* Pseudocode (potentially paper in a future milestone) -* notion doc describing the solution -* research log post -* python code, support by the DST team [[ roadmap/vac/dst/dr-support/vac/carnot-2-3rds-executable-spec | carnot-2rds-executable-spec ]] -* RFC on rfc.vac.dev containing executable spec - -Note: Need to be discussed: The Pseudocode can be completed earlier so that devs can began implementation, whereas the paper can be completed later. - - diff --git a/content/vac/dr/consensus/nomos/carnot-bribary-article.md b/content/vac/dr/consensus/nomos/carnot-bribary-article.md deleted file mode 100644 index e2cbe0ffd..000000000 --- a/content/vac/dr/consensus/nomos/carnot-bribary-article.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: "Carnot Bribary Article" ---- -## `vac:dr:consensus:nomos:carnot-bribary-article` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Carnot Bribary Article: 2023-08-01, 2023-08-31 -``` - -- status: ?% -- CC: - -### Description - -The article describes how multi-dimensional bribery attacks cannot be addressed at the consensus layer alone. -A proper game theoretical, economic analysis also needs to be done. The solution to this problem will also touch on several aspects -including the economy, distributed systems, and cryptography. - - -This Milestone also comprises a presentation: -This presentation slide describes how multi-dimensional bribery attacks cannot -be addressed at the consensus layer alone. By combining PoS with the -distributed consensus a new dimension is introduced into the ecosystem. Now the -security of the protocol should also be considered against economic attacks. -The presentation provides an example based on the Crypto Economic security -model of how any PoS consensus protocol can fail against a bribing attack. The -presentation emphasizes that a proper game theoretical, and economic analysis -also needs to be done. It also suggests a solution for addressing bribing -attacks in Carnot consensus. - -### Risks - -This problem has not been properly addressed for PoS protocols. - - -### Justification - - -### Deliverables - -* A report on how bribery attacks can be addressed in PoS. This will ultimately give a new research direction. - -* [presentation slides](https://www.notion.so/Roadmap-Deep-Research-DR-561a864c890549c3861bf52ab979d7ab?pvs=4#5873a631da964b34a24e5a05307b29ae) -* [current status](https://hackmd.io/oCOmQD6sSLOsjqr7sh7jNw) - - diff --git a/content/vac/dr/consensus/nomos/carnot-paper.md b/content/vac/dr/consensus/nomos/carnot-paper.md deleted file mode 100644 index 67ae983ed..000000000 --- a/content/vac/dr/consensus/nomos/carnot-paper.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: "Carnot Paper" ---- -## `vac:dr:consensus:nomos:carnot-paper` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Carnot Paper: done, 2023-01-20, 2023-09-30 -``` - -- status: 100% -- CC: Moh - -### Description - -First version of a scientific carnot paper. -Publish on arxiv. - -### Justification - - -### Deliverables - -* https://arxiv.org/pdf/2308.16016.pdf - - - diff --git a/content/vac/dr/consensus/nomos/carnot-paper_02.md b/content/vac/dr/consensus/nomos/carnot-paper_02.md deleted file mode 100644 index a6a3da3e5..000000000 --- a/content/vac/dr/consensus/nomos/carnot-paper_02.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: "Carnot Paper 02" ---- -## `vac:dr:consensus:nomos:carnot-paper_02` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Carnot Paper: 2023-09-01, 2024 -``` - -- status: 10% -- CC: Moh - -### Description - -* complete experimental results -* publish the paper at a scientific conference or journal -* present the paper at the conference - -* the goal is to submit before end of 2023 - -### Risks - -* We need to find a fitting conference and the respective deadlines might not align. -* review process takes a long time - -(No fixed deadline because of these risks.) - -### Justification - - -### Deliverables - - - - diff --git a/content/vac/dr/consensus/nomos/detecting-reporting-attacks-carnot.md b/content/vac/dr/consensus/nomos/detecting-reporting-attacks-carnot.md deleted file mode 100644 index e6603c281..000000000 --- a/content/vac/dr/consensus/nomos/detecting-reporting-attacks-carnot.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "Detecting Reporting Attacks Carnot" ---- -## `vac:dr:consensus:nomos:detecting-reporting-attacks-carnot` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Detecting Reporting Attacks Carnot: 1970-01-01, 1970-01-02 -``` - -- status: 0% -- CC: Moh - -### Description - -This research work will describe the mechanism of how various attacks can be detected, reported, and slashed in the consensus. - -### Justification - - -### Deliverables - -* algorithm -* pseudocode -* spec -* rlog post - - - diff --git a/content/vac/dr/consensus/nomos/inter-chain-protocol.md b/content/vac/dr/consensus/nomos/inter-chain-protocol.md deleted file mode 100644 index 986e0ac04..000000000 --- a/content/vac/dr/consensus/nomos/inter-chain-protocol.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: "Inter Chain Protocol" ---- -## `vac:dr:consensus:nomos:inter-chain-protocol` ---- - -- status: 0% -- CC: Moh - -### Description - -Exploring the interplay between the main chain and execution zones or chains is a pivotal aspect of our research. -Our inquiry delves into how these zones are initiated from the main chain, ensuring their security and data availability. -Additionally, we address the optimization of interaction among independent chains, facilitating efficient cross-chain communication and collaboration. - -### Justification - - -### Deliverables - -* Algorithm -* spec - - diff --git a/content/vac/dr/consensus/nomos/multi-leader-and-multi-overlay-carnot.md b/content/vac/dr/consensus/nomos/multi-leader-and-multi-overlay-carnot.md deleted file mode 100644 index 09566d88f..000000000 --- a/content/vac/dr/consensus/nomos/multi-leader-and-multi-overlay-carnot.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Multi-Leader and Multi-Overlay Carnot" ---- -## `vac:dr:consensus:nomos:multi-leader-and-multi-overlay-carnot` ---- - -- status: 0% -- CC: Moh - -### Description - -In pursuit of heightened resilience and performance optimization, our research extends to multi-leader and multi-overlay Carnot configurations. -This direction seeks to bolster the protocol's resistance against Denial of Service (DoS) and bribery attacks. -By introducing multiple leadership nodes and overlay structures, we envision a protocol that thrives in adversarial environments while maintaining exceptional performance standards. - -As we navigate this deep research trajectory, our collective efforts contribute to the advancement of blockchain technology, ushering in a new era of consensus, privacy, and scalability. - -Has to adhere to Nomos architecture (specific specifications) - -* Nomos Whitepaper -* has to adhere to privacy requirements - -### Justification - - -### Deliverables - -* Algorithm -* spec - diff --git a/content/vac/dr/consensus/nomos/stake-privacy-timing-attacks.md b/content/vac/dr/consensus/nomos/stake-privacy-timing-attacks.md deleted file mode 100644 index fd1477361..000000000 --- a/content/vac/dr/consensus/nomos/stake-privacy-timing-attacks.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: "Network Privacy Stack - Stakeholder Privacy" -description: "Main goal: finding in-protocol (carnot) mechanisms to solve the problem of timing attacks." ---- -## `vac:dr:consesus:nomos:stake-privacy-timing-attacks` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Stake Privacy - Timing Attacks: -``` - -- status: 0% -- CC: Moh - -### Description - -This milestone comprises component 3 of the [Nomos network privacy stack](https://www.notion.so/Network-Privacy-Stack-2a2a86647d2a42ca9de6940c55f99851) -in the context of consensus privacy: - -The main goal of this work is finding in-protocol (carnot) mechanisms to solve the problem of timing attacks. - -Upper layer protections of the network from the sender: Simplest solution to prevent attacks to private PoS: minimum age of transaction for inclusion. - -Certain types of timing attacks and network observation to identify high stake participants are already being worked on at the network level. -However, this problem should be considered at the PoS/consesus layer as well. - - -#### more info - -* [paper: On the Anonymity Guarantees of Anonymous Proof-of-Stake Protocols](https://eprint.iacr.org/2021/409.pdf) - -From the abstract: - -``` -[...] focus on anonymizing the -messages of the blockchain protocol, but suggest that potential identity leaks from the networklayer can be removed as well by employing anonymous broadcast channels. -In this work we show that this intuition is flawed. -``` - -Generally, our endeavor in stake privacy research centers on preserving the confidentiality of validator stakes. -By leveraging cryptographic techniques and innovative approaches, we aim to enhance the privacy and security of staking operations within the Carnot ecosystem. - -Older docs: - -* Hash-based Node Id encryption Hash-based-Node-Id-encryption-7bfb11941a6840c49bfe065f535877c9?pvs=24 -* Carnot PoS Discussion notion.so/Carnot-PoS-Discussion-f2ef371102f6433da81fb1b1b9213c2b?pvs=24 - -Potential future solutions (outside the scope of this mile stone) comprise: proof of mixing + modifications to the base mixnet design. This seems like a difficult path, for long-term research if feasible. - -### Justification - -This is and important step towards achieving the Nomos privacy requirements. - -### Deliverables - -* specification - - - diff --git a/content/vac/dr/g/nomos/reviews.md b/content/vac/dr/g/nomos/reviews.md deleted file mode 100644 index 7d072f315..000000000 --- a/content/vac/dr/g/nomos/reviews.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "Reviews" -description: "research consulting: reviews of documents / papers" ---- -## `vac:dr:g:nomos:reviews` ---- - -- status: ongoing -- CC: team - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/gsub-scaling/vac/gossipsub-improvements-paper.md b/content/vac/dr/gsub-scaling/vac/gossipsub-improvements-paper.md deleted file mode 100644 index 8d4cc1ff8..000000000 --- a/content/vac/dr/gsub-scaling/vac/gossipsub-improvements-paper.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: "Gossipsub Improvements Paper" ---- -## `vac:dr:gsub-scaling:vac:gossipsub-improvements-paper` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub Improvements paper: 2023-06-01, 2023-10-31 -``` - -- status: 70% -- CC: Farooq - -### Description - -[background + first results + potential improvements](https://hackmd.io/X1DoBHtYTtuGqYg0qK4zJw) - -* comprehensive current/related work study on gossipsub scaling (including relevant work outside of gossipsub, in the broader area of unstructured P2P networks in general) -* complete technical report on gossip scaling / gossipsub improvements (containing, but not limited to, our previous research) -* research log post (vac.dev) based on the techreport -* talk @ Logos research call -* scientific paper ready for publication - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/gsub-scaling/vac/gossipsub-simulation.md b/content/vac/dr/gsub-scaling/vac/gossipsub-simulation.md deleted file mode 100644 index 397b0a809..000000000 --- a/content/vac/dr/gsub-scaling/vac/gossipsub-simulation.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: "Gossipsub Simulation" ---- -## `vac:dr:gsub-scaling:vac:gossipsub-simulation` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub Simulation: 2023-06-31, 2023-09-30 -``` - -- status: 20% -- CC: Farooq - -### Description - -* simple gossipsub node (in nim) for DST/Wakurtosis simulations -* PoC [shadow](https://github.com/shadow/shadow) simulation - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/gsub-scaling/vac/unstructured-p2p-improvements-survey.md b/content/vac/dr/gsub-scaling/vac/unstructured-p2p-improvements-survey.md deleted file mode 100644 index 6de3947ca..000000000 --- a/content/vac/dr/gsub-scaling/vac/unstructured-p2p-improvements-survey.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: "Unstructured P2P Improvements Survey" ---- -## `vac:dr:gsub-scaling:vac:unstructured-p2p-improvements-survey` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Unstructured P2P Improvements Survey: 2023-08-15, 2023-12-31 -``` - -- status: 20% -- CC: Farooq - -### Description - -* survey techreport -* survey scientific paper if there is enough to justify a paper - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/index.md b/content/vac/dr/index.md deleted file mode 100644 index 4e7f47513..000000000 --- a/content/vac/dr/index.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Deep Research Service Unit -tags: -- dr -- vac -date: 2023-08-25 -lastmod: 2023-09-06 ---- - -## `vac:dr:valpriv:vac:` - -* [[vac/dr/valpriv/vac/tor-push-poc|tor-push-poc]] -* [[vac/dr/valpriv/vac/tor-push-rel-work|tor-push-rel-work]] -* [[vac/dr/valpriv/vac/tor-push-paper|tor-push-paper]] -* [[vac/dr/valpriv/vac/tor-push-rln|tor-push-rln]] -* [[vac/dr/valpriv/vac/priv-validator-network|priv-validator-network]] -* [[vac/dr/valpriv/vac/mix-net-solution|mix-net-solution]] - -## `vac:dr:valpriv:nomos:` - -* [[vac/dr/valpriv/nomos/validator-privacy|validator-privacy]] - -## `vac:dr:gsub-scaling:vac:` - -* [[vac/dr/gsub-scaling/vac/gossipsub-simulation|gossipsub-simulation]] -* [[vac/dr/gsub-scaling/vac/gossipsub-improvements-paper|gossipsub-improvements-paper]] -* [[vac/dr/gsub-scaling/vac/unstructured-p2p-improvements-survey|unstructured-p2p-improvements-survey]] - -## `vac:dr:consensus:nomos:` - -* [x] [[vac/dr/consensus/nomos/carnot-paper|carnot-paper]] -* [[vac/dr/consensus/nomos/carnot-paper_02|carnot-paper_02 ]] -* [[vac/dr/consensus/nomos/carnot-bribary-article|carnot-bribary-article]] -* [[vac/dr/consensus/nomos/carnot-2-3rds-vote-aggregation|carnot-2-3rds-vote-aggregation]] -* [[vac/dr/consensus/nomos/blockchain-security-in-crypto-economic-models|blockchain-security-in-crypto-economic-models]] -* [[vac/dr/consensus/nomos/detecting-reporting-attacks-carnot|detecting-reporting-attacks-carnot]] -* [[vac/dr/consensus/nomos/stake-privacy-timing-attacks|stake-privacy-timing-attacks]] -* [[vac/dr/consensus/nomos/inter-chain-protocol|inter-chain-protocol]] -* [[vac/dr/consensus/nomos/multi-leader-and-multi-overlay-carnot|multi-leader-and-multi-overlay-carnot ]] - -## `vac:dr:zk:codex:` - -* [[ vac/dr/zk/codex/storage-proofs-open-problems-review | storage-proofs-open-problems-review ]] - -## `vac:dr::nomos:` -* [[ vac/dr/g/nomos/reviews.md | reviews ]] diff --git a/content/vac/dr/valpriv/nomos/validator-privacy.md b/content/vac/dr/valpriv/nomos/validator-privacy.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/dr/valpriv/vac/mix-net-solution.md b/content/vac/dr/valpriv/vac/mix-net-solution.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/dr/valpriv/vac/priv-validator-network.md b/content/vac/dr/valpriv/vac/priv-validator-network.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/dr/valpriv/vac/tor-push-paper.md b/content/vac/dr/valpriv/vac/tor-push-paper.md deleted file mode 100644 index 08247b5c5..000000000 --- a/content/vac/dr/valpriv/vac/tor-push-paper.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "Tor Push Paper" ---- -## `vac:dr:valpriv:vac:tor-push-paper` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Tor Push Paper: 2023-08-01, 2023-11-30 -``` - -- status: 30% -- CC: Umar - -### Description - -Comprises: - -* thorough anonymity/sec analysis of Tor push for Validator privacy -* thorough latency analysis of Tor push -* paper (for workshop) on introducing and analysing Tor-push - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/valpriv/vac/tor-push-poc.md b/content/vac/dr/valpriv/vac/tor-push-poc.md deleted file mode 100644 index 5896c8d94..000000000 --- a/content/vac/dr/valpriv/vac/tor-push-poc.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: "Tor Push PoC" ---- -## `vac:rc:valpriv:vac:tor-push-poc` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Tor Push PoC: 2023-06-01, 2023-09-15 -``` - -- status: 80% -- CC: Umar - -### Description - -* [x] first PoC of Tor push in Nimbus (testnet Goerli) https://github.com/vacp2p/nimbus-eth2-experimental/issues/1 - - first latency measurements (comprehensive analysis in next milestone) -* research log post on Tor push / Nimbus PoC incl first latency measurements -* add epoch support as described in the [RFC](https://rfc.vac.dev/spec/46/) -* update/adjust Tor push spec -* talk @ Logos research call -* refine PoC (should fully cover the RFC) -* thorough latency measurements for[[vac/dr/valpriv/vac/tor-push-paper|tor-push-paper]] - -#### Info - -* The epochs - -### Justification - - -### Deliverables - -* [WIP] https://github.com/vacp2p/nimbus-eth2-experimental/pull/3 - diff --git a/content/vac/dr/valpriv/vac/tor-push-rel-work.md b/content/vac/dr/valpriv/vac/tor-push-rel-work.md deleted file mode 100644 index a59d7a3b4..000000000 --- a/content/vac/dr/valpriv/vac/tor-push-rel-work.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: "Tor Push Related Work" ---- -## `vac:dr:valpriv:vac:tor-push-rel-work` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Tor Push Related Work: done, 2023-06-01, 2023-09-15 -``` - -- status: 100% -- CC: Umar - -### Description - -Background and motivation [here](https://ethresear.ch/t/a-tor-based-validator-anonymity-approach-incl-comparison-to-dandelion/14134). - -* comprehensive current/related work study on Validator Privacy - - focus on network layer but also including: network vs consesus layer privacy (SSLE), as well as combinations - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dr/valpriv/vac/tor-push-rln.md b/content/vac/dr/valpriv/vac/tor-push-rln.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/dr/zk/codex/storage-proofs-open-problems-review.md b/content/vac/dr/zk/codex/storage-proofs-open-problems-review.md deleted file mode 100644 index 6bed7ea38..000000000 --- a/content/vac/dr/zk/codex/storage-proofs-open-problems-review.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "Storage Proofs: Open Problems Review" -description: "Review Codex' storage proof ZK related open research problems." ---- -## `vac:dr:zk:codex:open-problems-review` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Open Problems Review: 2023-09-20, 2023-11-30 -``` - -- status: 0% -- CC: Marvin - -### Description - -* https://github.com/codex-storage/zk-research-artifacts/blob/master/storage_proofs/storage_proof_musings.md - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/analysis-gsub-model/status/control-messages.md b/content/vac/dst/analysis-gsub-model/status/control-messages.md deleted file mode 100644 index 027b2e7cd..000000000 --- a/content/vac/dst/analysis-gsub-model/status/control-messages.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "Control Messages" ---- -## `vac:dst:analysis-gsub-model:status:control-messages` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Control Messages: 2023-07-01, 2023-09-15 -``` - -- status: 85% -- CC: Ganesh - -### Description - - -### Justification - -### Info - -* delayed because of extending Nomos analysis milestone - -### Deliverables - - - diff --git a/content/vac/dst/analysis-gsub-model/vac/refactoring.md b/content/vac/dst/analysis-gsub-model/vac/refactoring.md deleted file mode 100644 index 5bfb50894..000000000 --- a/content/vac/dst/analysis-gsub-model/vac/refactoring.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Refactoring" ---- -## `vac:dst:analysis-gsub-model:vac:refactoring` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Refactoring: 2023-08-01, 2023-09-30 -``` - -- status: 40% -- CC: Ganesh - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/analysis-shadow/vac/shadow-basic-simulation.md b/content/vac/dst/analysis-shadow/vac/shadow-basic-simulation.md deleted file mode 100644 index a39f56ca2..000000000 --- a/content/vac/dst/analysis-shadow/vac/shadow-basic-simulation.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: "Basic Shadow Simulation" ---- -## `vac:dst:analysis-shadow:vac:basic-shadow-simulation` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Basic Shadow Simulation: 2023-08-01, 2023-08-31 -``` - -- status: 90% -- CC: Jordi - -### Description - -* simple 10k shadow sim of the gossipsub node as a PoC. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/analysis-shadow/vac/shadow-gossipsub-analysis.md b/content/vac/dst/analysis-shadow/vac/shadow-gossipsub-analysis.md deleted file mode 100644 index c543766ff..000000000 --- a/content/vac/dst/analysis-shadow/vac/shadow-gossipsub-analysis.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: "Shadow Gossipsub Analysis" ---- -## `vac:dst:analysis-shadow:vac:shadow-gossipsub-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Shadow Gossipsub Analysis: 2023-09-01, 2023-10-31 -``` - -- status: 0% -- CC: Jordi - -### Description - -* develop a gossipsub node with allows to set desired message rates and other properties -* try to get to a higher node number (50k?) -* research log post - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/analysis-shadow/waku/shadow-waku-relay-analysis.md b/content/vac/dst/analysis-shadow/waku/shadow-waku-relay-analysis.md deleted file mode 100644 index 36112d993..000000000 --- a/content/vac/dst/analysis-shadow/waku/shadow-waku-relay-analysis.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Shadow Waku Relay Analysis" ---- -## `vac:dst:analysis-shadow:waku:shadow-waku-relay-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Shadow Waku Relay Analysis: done, 2023-10-01, 2023-11-30 -``` - -- status: 0% -- CC: Jordi - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/analysis/nomos/nomos-simulation-analysis.md b/content/vac/dst/analysis/nomos/nomos-simulation-analysis.md deleted file mode 100644 index 1b3cf169a..000000000 --- a/content/vac/dst/analysis/nomos/nomos-simulation-analysis.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Simulation Analysis" ---- -## `vac:dst:analysis:nomos:simulation-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Simulation Analysis: 2023-08-01, 2023-09-15 -``` - -- status: 70% -- CC: Ganesh - -### Description - - -### Justification - -### Info - -Extended: -* include signature aggregation into analysis -* write analysis section in Carnot paper - -* [nomos node](https://github.com/logos-co/nomos-node) -* [nomos simulations](https://github.com/logos-co/nomos-simulations) - -### Deliverables - - - diff --git a/content/vac/dst/dr-support/vac/carnot-executable-spec.md b/content/vac/dst/dr-support/vac/carnot-executable-spec.md deleted file mode 100644 index 5a2acf0b8..000000000 --- a/content/vac/dst/dr-support/vac/carnot-executable-spec.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "Carnot 2-3rds Vote Aggregation Python Implementation" ---- -## `vac:dst:dr-support:vac:carnot-2-3rds-python-impl` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Carnot 2/3rds Python Impl: 2023-09-15, 2023-10-31 -``` - -- status: 0% -- CC: Ganesh - -### Description - -* support the DR team with writing the python code for a executable specification of the Carnot 2/3rds vote aggregation - - [[carnot-2-3rds-vote-aggregation| see DR milestone: carnot-2-3rds-vote-aggregation]] - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/eng-10ktool/vac/bandwidth-test.md b/content/vac/dst/eng-10ktool/vac/bandwidth-test.md deleted file mode 100644 index 7c74efe07..000000000 --- a/content/vac/dst/eng-10ktool/vac/bandwidth-test.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: "Bandwidth Test" ---- -## `vac:dst:eng-10ktool:vac:bandwidth` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Bandwidth Test: 2023-08-01, 2023-10-31 -``` - -- status: 20% -- CC: Alberto - -### Description - -A first version of tool that allows running >10k gossipsub / waku relay nodes. -The tool should measure bandwidth usage per node and bundle the simulation data for analaysis. - -### Justification - - -### Deliverables - -* https://github.com/vacp2p/cs-codex-dist-tests - - - diff --git a/content/vac/dst/eng-10ktool/vac/qos.md b/content/vac/dst/eng-10ktool/vac/qos.md deleted file mode 100644 index 1e3c9dff2..000000000 --- a/content/vac/dst/eng-10ktool/vac/qos.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: "QoS" ---- -## `vac:dst:eng-10ktool:vac:qos` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - QoS 10ktool: 2023-11-01, 2023-12-31 -``` - -- status: 0% -- CC: Alberto - -### Description - -Add QoS parameter support to the 10k tool. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/eng-10ktool/waku/waku-protocols.md b/content/vac/dst/eng-10ktool/waku/waku-protocols.md deleted file mode 100644 index 991fa51d8..000000000 --- a/content/vac/dst/eng-10ktool/waku/waku-protocols.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Waku Protocols" ---- -## `vac:dst:eng-10ktool:waku:waku-protocols` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Waku Protocols: 2023-11-01, 2023-12-31 -``` - -- status: 0% -- CC: Alberto - -### Description - -So far, we tested gossip / relay, as well as discv5. - -This milestone comprises running further Waku protocols, namely: -* filter -* lightpush -* store -* peer exchange - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/eng/vac/bundle-simulation-data.md b/content/vac/dst/eng/vac/bundle-simulation-data.md deleted file mode 100644 index a9a7d2e2e..000000000 --- a/content/vac/dst/eng/vac/bundle-simulation-data.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "Bundle Simulation Data" ---- -## `vac:acz:rlnp2p:waku:production-readiness` ---- - -- status: ongoing -- CC: - -### Description - -The Vac DST engineering team runs simulations, bundles the resulting data, and delivers. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/index.md b/content/vac/dst/index.md deleted file mode 100644 index d56be9c00..000000000 --- a/content/vac/dst/index.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: Distributed Systems Testing Service Unit -tags: -- dst -- vac -date: 2023-08-25 -lastmod: 2023-09-08 ---- - -## `vac:dst:` ---- - -### `wakurtosis:waku:` - -* [x] [[vac/dst/wakurtosis/waku/techreport|techreport ]] -* [x] [[vac/dst/wakurtosis/waku/techreport_02|techreport_02 ]] -* [[vac/dst/wakurtosis/waku/techreport_03|techreport_03 ]] -* [x] [[vac/dst/wakurtosis/waku/features|wakurtosis:features ]] -* [[vac/dst/wakurtosis/waku/gossipsub-topology-analysis|gossipsub-topology-analysis ]] - -### `wakurtosis:nomos:` -* [x] [[vac/dst/wakurtosis/nomos/ci-integration|ci-integration ]] - -### `wakurtosis:vac:` -* [[vac/dst/wakurtosis/vac/rlog|rlog]] -* [[vac/dst/wakurtosis/vac/retrospective-rlog|retrospective-rlog ]] -* [x] [[vac/dst/wakurtosis/vac/maintenance|maintenance ]] - -### `analysis:nomos` -* [[vac/dst/analysis/nomos/nomos-simulation-analysis|simulation-analysis ]] - -### `analysis-gsub-model:vac` -* [[vac/dst/analysis-gsub-model/vac/refactoring|refactoring ]] - -### `analysis-gsub-model:status:` -* [[vac/dst/analysis-gsub-model/status/control-messages|control-messages ]] - -### `analysis-shadow:vac:` -* [[vac/dst/analysis-shadow/vac/shadow-basic-simulation|shadow-basic-simulation ]] -* [[vac/dst/analysis-shadow/vac/shadow-gossipsub-analysis|shadow-gossipsub-analysis ]] - -### `analysis-shadow:waku:` -* [[vac/dst/analysis-shadow/waku/shadow-waku-relay-analysis|shadow-waku-relay-analysis ]] - -### `dr-support:` -* [[roadmap/vac/dst/dr-support/vac/carnot-2-3rds-executable-spec|carnot-2-3rds-executable-spec ]] - -### `eng:vac:` -* [[vac/dst/eng/vac/bundle-simulation-data|bundle-simulation-data ]] - -### `eng-10ktool:` -* [[vac/dst/eng-10ktool/vac/bandwidth-test|bandwidth-test ]] -* [[vac/dst/eng-10ktool/vac/qos|QoS ]] -* [[vac/dst/eng-10ktool/waku/waku-protocols|waku-protocols ]] - - -### `software-testing:waku:` -* [[vac/dst/software-testing/waku/test-plans|test-plans ]] -* [[vac/dst/software-testing/waku/test-automation-js-waku|test-automation-js-waku ]] -* [[vac/dst/software-testing/waku/test-automation-nwaku|test-automation-nwaku ]] -* [[vac/dst/software-testing/waku/test-automation-go-waku|test-automation-go-waku ]] -* [[vac/dst/software-testing/waku/interop-testing|interop-testing ]] - diff --git a/content/vac/dst/software-testing/waku/interop-testing.md b/content/vac/dst/software-testing/waku/interop-testing.md deleted file mode 100644 index 9c63adf04..000000000 --- a/content/vac/dst/software-testing/waku/interop-testing.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: "Interop Testing" ---- -## `vac:dst:software-testing:waku:interop-testing` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Interop Testing: 2023-09-01, 2024-02-29 -``` - -- status: 0% -- CC: Florin, Alex, Roman - -### Description - -* filter nwaku service node + js waku client node (t, Florin) -* nwaku <> go-waku interop (t, Alex) - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/software-testing/waku/test-automation-go-waku.md b/content/vac/dst/software-testing/waku/test-automation-go-waku.md deleted file mode 100644 index 8ff68086e..000000000 --- a/content/vac/dst/software-testing/waku/test-automation-go-waku.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: "Test Automation go-waku" ---- -## `vac:dst:software-testing:waku:test-automation-go-waku` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Test Automation go-waku: 2023-10-01, 2024-02-29 -``` - -- status: 0% -- CC: Roman - -### Description - -* filter (t) ← first group of tests added in PR to JS waku -* lightpush (t) -* store (t) -* relay -* peer exchange -* discv5 -* peer & connection management -* CI integration - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/software-testing/waku/test-automation-js-waku.md b/content/vac/dst/software-testing/waku/test-automation-js-waku.md deleted file mode 100644 index c0cbd7652..000000000 --- a/content/vac/dst/software-testing/waku/test-automation-js-waku.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: "Test Automation js-waku" ---- -## `vac:dst:software-testing:waku:test-automation-js-waku` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Test Automation js-waku: 2023-09-15, 2024-02-29 -``` - -- status: 10% -- CC: Florin - -### Description - -* filter (t) ← first group of tests added in PR to JS waku -* lightpush (t) -* store (t) -* relay -* peer exchange -* discv5 -* peer & connection management -* CI integration -* Interoperability (t) - -Additional requirements: -It should be possible to choose the nwaku version the js waku test use (done via github actions inputs) - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/software-testing/waku/test-automation-nwaku.md b/content/vac/dst/software-testing/waku/test-automation-nwaku.md deleted file mode 100644 index d669b32fc..000000000 --- a/content/vac/dst/software-testing/waku/test-automation-nwaku.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Test Automation nwaku" ---- -## `vac:dst:software-testing:waku:test-automation-nwaku` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Test Automation nwaku: 2023-09-15, 2024-02-29 -``` - -- status: 0% -- CC: Alex - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/software-testing/waku/test-plans.md b/content/vac/dst/software-testing/waku/test-plans.md deleted file mode 100644 index e906843eb..000000000 --- a/content/vac/dst/software-testing/waku/test-plans.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: "Test Plans" ---- -## `vac:dst:software-testing:waku:test-plans` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Test Plans: 2023-09-01, 2024-02-29 -``` - -- status: 15% -- CC: Florin - -### Description - -unit + integration test -(contains actually understanding the protocols, critically engage with the protocols) -(instruct the engineer) - -* filter (t) -* lightpush (t) -* store (t) -* relay () -* peer exchange -* discv5 -* peer & connection management -* interoperability (t, starting) -* simulation plans - -### Justification - - -### Deliverables - -* [test plans](https://www.notion.so/Waku-2b93b558eb3b4de482c45babb8581a2b) - diff --git a/content/vac/dst/wakurtosis/nomos/ci-integration.md b/content/vac/dst/wakurtosis/nomos/ci-integration.md deleted file mode 100644 index a60b0b00c..000000000 --- a/content/vac/dst/wakurtosis/nomos/ci-integration.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: "CI Integration" ---- -## `vac:dst:wakurtosis:nomos:ci-integration` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - CI Integration: done, 2023-07-01, 2023-07-31 -``` - -- status: 100% -- CC: Alberto - -### Description - -Add Nomos integration to wakurtosis so Nomos can be also used in it. - -### Justification - -Nomos is under constant developmet. -With this integration, each time a change is done, a continuous integration test is done, making sure the consensus protocol works properly with a few nodes. - -### Info - -We stopped working on a follow up milestone since we deprecated Wakurtosis in favour of our new 10ktool. - -### Deliverables - -* first version of Nomos CI integration (https://github.com/vacp2p/wakurtosis/pull/141) - - - diff --git a/content/vac/dst/wakurtosis/vac/maintenance.md b/content/vac/dst/wakurtosis/vac/maintenance.md deleted file mode 100644 index 9625a49c7..000000000 --- a/content/vac/dst/wakurtosis/vac/maintenance.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "Wakurtosis Maintenance" ---- -## `vac:dst:wakurtosis:vac:maintenance` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Wakurtosis Maintenance: done, 2023-01-01, 2023-08-31 -``` - -- status: 100% -- CC: Alberto - -### Description - -Keep up to date the tool if there are crashing changes in the services that are being used in it (Waku, Nomos…) - -### Justification - -Services being used are in constant change, thus it can lead wakurtosis to break. - -### Info - -* Wakurtosis is deprecated. We do not actively maintain it anymore. - -### Deliverables - - - diff --git a/content/vac/dst/wakurtosis/vac/retrospective-rlog.md b/content/vac/dst/wakurtosis/vac/retrospective-rlog.md deleted file mode 100644 index 880bdddf9..000000000 --- a/content/vac/dst/wakurtosis/vac/retrospective-rlog.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "Rlog: Wakurtosis Retrospective" ---- -## `vac:dst:wakurtosis:waku:retrospective-rlog` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Wakurtosis Retrospective: 2023-08-01, 2023-09-30 -``` - -- status: 50% -- CC: Jordi - -### Description - -Research log discussing what would we have needed from Wakurtosis to make it work for us beyond our smaller solution. -Why did we decide to drop Kurtosis and work towards a Kubernetes-based solution now. - -### Justification - -### Info - -* [Alberto's Opinion](https://www.notion.so/Alberto-s-Opinion-5f1af38a2e274f42baad0e322629f3a9) - -### Deliverables - - - diff --git a/content/vac/dst/wakurtosis/vac/rlog.md b/content/vac/dst/wakurtosis/vac/rlog.md deleted file mode 100644 index a7e862089..000000000 --- a/content/vac/dst/wakurtosis/vac/rlog.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "Wakurtosis Rlog" ---- -## `vac:dst:wakurtosis:waku:rlog` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Rlog Wakurtosis: 2023-06-01, 2023-08-31 -``` - -- status: 90% -- CC: Jordi - -### Description - -Research log post based on the Wakurtosis tech reports and addendum. - -### Justification - -### Info - -* delayed because of holidays / other prios - -### Deliverables - - - - diff --git a/content/vac/dst/wakurtosis/waku/features.md b/content/vac/dst/wakurtosis/waku/features.md deleted file mode 100644 index 34141e7b6..000000000 --- a/content/vac/dst/wakurtosis/waku/features.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "Wakurtosis Features" ---- -## `vac:dst:wakurtosis:waku:wakurtosis-features` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Wakurtosis Features: done, 2023-04-01, 2023-07-31 -``` - -- status: 100% -- CC: Alberto - -### Description - -* Features requested by Waku for the simulations done in wakurtosis (e.g. discv5 support). - - -### Justification - -* Discv5 is an important protocol to test. Also, we should be able to work with offline data once the simulation is finished. - -### Deliverables - - - diff --git a/content/vac/dst/wakurtosis/waku/gossipsub-topology-analysis.md b/content/vac/dst/wakurtosis/waku/gossipsub-topology-analysis.md deleted file mode 100644 index a4acc03c1..000000000 --- a/content/vac/dst/wakurtosis/waku/gossipsub-topology-analysis.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: "Gossipsub Topology Analysis" ---- -## `vac:dst:wakurtosis:waku:gossipsub-topology-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub Topology Analysis: 2023-07-01, 2023-10-15 -``` - -- status: 60% -- CC: Ganesh - -### Description - -Analysis of the topology of a gossipsub topic mesh. - - -Comprises: -* research log post -* shadow integration -* Logos research call talk; also get input during the discussion regarding which areas we should go deeper into, and what would help Logos projects the most. - -### Info - -Extended deadline because: - - * added research log post to the milestone goals + more analysis goals (e.g stability/dynamics) - * added analysing simple gossipsub node (in addition to Waku relay) - - Relevant data has to be collected on the gossipsub-layer which increased the complexity of this milestone - * shadow integration - * more focus on nomos simulation analysis + extended analysis - -Note: This analysis module will be usable outside of Wakurtosis, too. -This is the reason we continue on this milestone, even though Wakurtosis is deprecated now. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/dst/wakurtosis/waku/techreport.md b/content/vac/dst/wakurtosis/waku/techreport.md deleted file mode 100644 index 619d7a3d7..000000000 --- a/content/vac/dst/wakurtosis/waku/techreport.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: "Techreport" ---- -## `vac:dst:wakurtosis:waku:techreport` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Techreport: done, 2023-06-01, 2023-07-31 -``` - -- status: 100% -- CC: Jordi - -### Description - - -### Justification - - -### Deliverables - -* [techreport](https://docs.google.com/document/d/1U3bzlbk_Z3ZxN9tPAnORfYdPRWyskMuShXbdxCj4xOM/edit?usp=sharing) - - diff --git a/content/vac/dst/wakurtosis/waku/techreport_02.md b/content/vac/dst/wakurtosis/waku/techreport_02.md deleted file mode 100644 index c50a77cc7..000000000 --- a/content/vac/dst/wakurtosis/waku/techreport_02.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "Techreport_02" ---- -## `vac:dst:wakurtosis:waku:techreport_02` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Techreport_02: done, 2023-08-01, 2023-08-31 -``` - -- status: 100% -- CC: Jordi - -### Description - -Run extra batches of simulations of the non-Discv5 case with average degree K=13, and K=50. - -### Justification - -To be able to better compare non-Discv5 and Discv5 Waku behaviours, the Waku team asked us to run new simulation batches with maximum fanout. -Current simulation batches are hard to compare due to the dynamic nature of network generated by the Discv5 protocol. - - -### Deliverables - -* [techreport addendum](https://docs.google.com/document/d/18gU7Pxn7eBBwhtlj7kz4zbRR_Ae7txaUexo3MJQLbIY/edit#heading=h.3h1xpjk9k603) - - diff --git a/content/vac/dst/wakurtosis/waku/techreport_03.md b/content/vac/dst/wakurtosis/waku/techreport_03.md deleted file mode 100644 index 2829eeaf6..000000000 --- a/content/vac/dst/wakurtosis/waku/techreport_03.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: "Techreport_03" ---- -## `vac:dst:wakurtosis:waku:techreport_03` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Techreport_02: done, 2023-09-01, 2023-09-30 -``` - -- status: 70% -- CC: Jordi - -### Description - -Add runs with 0msg/s to isolate the effect of discv5. - -### Justification - - -### Deliverables - -* techreport addendum - - diff --git a/content/vac/index.md b/content/vac/index.md deleted file mode 100644 index 170cbd5b6..000000000 --- a/content/vac/index.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: Vac Roadmap ---- -## `vac` - -### Structure - -`vac::::_<counter>` -- `vac` indicates it is a vac milestone -- `unit` indicates the vac unit `p2p`, `dst`, `tke`, `acz`, `sc`, `zkvm`, `dr`, `rfc` -- `tag` tags a specific area / project / epic within the respective vac unit, e.g. `nimlibp2p`, or `zerokit` -- `for_project` indicates which Logos project the milestone is mainly for `nomos`, `waku`, `codex`, `nimbus`, `status`; or `vac` (meaning it is internal / helping all projects as a base layer) -- `title` the title of the milestone -- `counter` an optional counter; `01` is implicit; marked with a `02` onward indicates extensions of previous milestones - -### Vac Unit Roadmaps - -#### R&D Service Units - -- `p2p:` [[vac/p2p/index|Peer-to-peer]] -- `tke:` [[vac/tke/index|Token Engineering]] -- `dst:` [[vac/dst/index|Distributed Systems Testing]] -- `acz:` [[vac/acz/index| Applied Cryptography and Zero-knowledge]] -- `sc:` [[vac/sc/index| Smart Contracts]] - -#### Vac Core - -- `dr:` [[vac/dr/index|Deep Research]] -- `rfc:` [[vac/rfc/index|RFC Process and Maintenance]] - -#### Incubator Projects - -- `nes:` [[vac/nes/index|Nescience]] - -### Weekly Updates -- [weekly updates](tags/vac-updates) - diff --git a/content/vac/monthly-reports/2023-sept.md b/content/vac/monthly-reports/2023-sept.md deleted file mode 100644 index 85aad9a49..000000000 --- a/content/vac/monthly-reports/2023-sept.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: 2023 September Vac Monthly Report -draft: true -lastmod: 2023-09-13 ---- - -## Executive Summary - -## Key Updates - -### Personnel -- Moh will be leaving the Deep Research team at the end of Oct. -- Tanguy left the Peer-to-peer team mid Oct. -- Roman joined the ACZ team at the end of Sept. - -### Vac Core - -#### RFC Process and Maintenance - - -#### Deep Research - - -### Support Services - -#### Peer-to-peer - - -#### Distributed Systems Testing - - -#### Token Engineering - - -#### Applied Cryptography and Zero-Knowledge - - -#### Smart Contract Development - - -### Incubation Projects - -#### Nescience (formerly zkVM) -The zkVM team officially changed its name to Nescience and will run with that as it grows. On Aug 28th, the team released a [detailed article](https://vac.dev/rlog/Nescience-A-zkVM-leveraging-hiding-properties/) describing the overall project and its ambitions. If you haven't read it, you should. - -The team performed a Logos Research Call presentation on the Frozen Heart Vulnerability. A summary and associated links to content can be found [in the minutes]() - -## Perceived Changes in Project Risk - -## Future Plans - -### Insight - -### Project - -## Sources and Useful Links - -Weekly Updates -- [[vac/updates/2023-09-18|2023-09-18]] -- [[vac/updates/2023-09-25|2023-09-25]] -- [[vac/updates/2023-10-02|2023-10-02]] -- [[vac/updates/2023-10-09|2023-10-09]] -- [[vac/updates/2023-10-16|2023-10-16]] \ No newline at end of file diff --git a/content/vac/nes/index.md b/content/vac/nes/index.md deleted file mode 100644 index 3744204c2..000000000 --- a/content/vac/nes/index.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: Nescience Incubation Project -description: Zero-knowledge Virtual Machine -tags: -- zkvm -- vac -date: 2023-08-25 -lastmod: 2023-10-07 ---- - -### `vac:nes:state-separation` - -* [[vac/nes/state-separation/vac/state-separation-doc | state-separation-doc ]] - -### `vac:nes:proofsystems` - -* [[vac/nes/proofsystems/vac/research-existing-proofsystems|research-existing-proofsystems ]] -* [[vac/nes/proofsystems/vac/benchmarks|benchmarks]] - - - diff --git a/content/vac/nes/proofsystems/vac/benchmarks.md b/content/vac/nes/proofsystems/vac/benchmarks.md deleted file mode 100644 index b721333ff..000000000 --- a/content/vac/nes/proofsystems/vac/benchmarks.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: "Benchmarks" ---- -## `vac:zkvm:proofsystems:vac:benchmarks` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Benchmarks: 2023-03-01, 2023-11-30 -``` - -- status: 70% -- CC: team - -### Description - -Comprises: - -* research log post -* make benchmark repo public + README (explaining how to execute benchmarks) -* benchmarks (recursive) for all current proof-systems (unless there is a good reason not to include one) -* scientific paper - -### Deliverables - diff --git a/content/vac/nes/proofsystems/vac/research-existing-proofsystems.md b/content/vac/nes/proofsystems/vac/research-existing-proofsystems.md deleted file mode 100644 index 78e8d2001..000000000 --- a/content/vac/nes/proofsystems/vac/research-existing-proofsystems.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "Research Existing Proofsystems" ---- -## `vac:zkvm:proofsystems:vac:research-existing-proofsystems` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Research Existing Proofsystems: 2023-01-01, 2023-11-30 -``` - -- status: 70% -- CC: team - -### Description - - -### Deliverables - diff --git a/content/vac/nes/state-separation/vac/state-separation-doc.md b/content/vac/nes/state-separation/vac/state-separation-doc.md deleted file mode 100644 index 40d76173b..000000000 --- a/content/vac/nes/state-separation/vac/state-separation-doc.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "State Separation Doc" -description: "Document explaining and providing reason for Nescience state separation." ---- -## `vac:zkvm:state-separation:vac:state-separation-doc` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - State Separation: 2023-09-20, 2023-10-31 -``` - -- status: 50% -- CC: Moudy - -### Description - -Document explaining and providing reason for Nescience state separation. - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/p2p/index.md b/content/vac/p2p/index.md deleted file mode 100644 index e6666880f..000000000 --- a/content/vac/p2p/index.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: P2P Service Unit -tags: -- p2p -- vac -date: 2023-08-25 -lastmod: 2023-09-05 ---- - -## `vac:p2p:` - ---- - -### `nimlibp2p:vac:` - -The P2P Service unit develops `nim-libp2p`. -nim-libp2p roadmap on github: https://github.com/status-im/nim-libp2p/issues/777 - -* [x] [[vac/p2p/nimlibp2p/vac/gossipsub-improvements-eip-4844|gossipsub-improvements-eip-4844]] -* [[vac/p2p/nimlibp2p/vac/webrtc-transport|webrtc-transport]] -* [[vac/p2p/nimlibp2p/vac/gossipsub-ddos-mitigation|gossipsub-ddos-mitigation]] -* [[vac/p2p/nimlibp2p/vac/gossipsub-stagger-send|gossipsub-stagger-send]] -* [[vac/p2p/nimlibp2p/vac/maintenance|maintenance]] - -### `nimchronos:vac:` - -* [[vac/p2p/nimchronos/vac/maintenance|maintenance]] diff --git a/content/vac/p2p/nimchronos/vac/maintenance.md b/content/vac/p2p/nimchronos/vac/maintenance.md deleted file mode 100644 index f792df489..000000000 --- a/content/vac/p2p/nimchronos/vac/maintenance.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Libchronos Maintenance" ---- -## `vac:p2p:nimchronos:vac:maintenance` ---- - -- status: ongoing -- CC: p2p team - -### Description - -- repo: https://github.com/status-im/nim-chronos - - - diff --git a/content/vac/p2p/nimlibp2p/vac/gossipsub-ddos-mitigation.md b/content/vac/p2p/nimlibp2p/vac/gossipsub-ddos-mitigation.md deleted file mode 100644 index 66a90c15b..000000000 --- a/content/vac/p2p/nimlibp2p/vac/gossipsub-ddos-mitigation.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "Gossipsub DDoS Mitigation" ---- -## `vac:p2p:nimlibp2p:vac:gossipsub-ddos-mitigation` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub DDoS mitigation: 2023-07-01, 2023-10-31 -``` - -- status: 30% -- CC: Diego - -### Description - - -### Deliverables - diff --git a/content/vac/p2p/nimlibp2p/vac/gossipsub-improvements-eip-4844.md b/content/vac/p2p/nimlibp2p/vac/gossipsub-improvements-eip-4844.md deleted file mode 100644 index e39f76057..000000000 --- a/content/vac/p2p/nimlibp2p/vac/gossipsub-improvements-eip-4844.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "Gossipsub Improvements EIP 4844" ---- -## `vac:p2p:nimlibp2p:vac:gossipsub-improvements-eip-4844` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub Improvements EIP 4844: done, 2023-03-01, 2023-07-31 -``` - -- status: 100% -- CC: Tanguy - -### Description - - -### Deliverables - diff --git a/content/vac/p2p/nimlibp2p/vac/gossipsub-stagger-send.md b/content/vac/p2p/nimlibp2p/vac/gossipsub-stagger-send.md deleted file mode 100644 index 492ff4d56..000000000 --- a/content/vac/p2p/nimlibp2p/vac/gossipsub-stagger-send.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: "Gossipsub Stagger Send" ---- -## `vac:p2p:nimlibp2p:vac:gossipsub-stagger-send` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Gossipsub Stagger Send: 2023-06-01, 2023-10-31 -``` - -- status: 20% -- CC: Tanguy - -### Description - -* specification -* first implementation (not deployable yet, deploy version will be in a separate milestone after syncing with other implementations) - -### Deliverables - diff --git a/content/vac/p2p/nimlibp2p/vac/maintenance.md b/content/vac/p2p/nimlibp2p/vac/maintenance.md deleted file mode 100644 index e75b423d0..000000000 --- a/content/vac/p2p/nimlibp2p/vac/maintenance.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Libp2p Maintenance" ---- -## `vac:p2p:nimlibp2p:vac:maintenance` ---- - -- status: ongoing -- CC: p2p team - -### Description - -- repo: https://github.com/status-im/nim-libp2p - - - diff --git a/content/vac/p2p/nimlibp2p/vac/webrtc-transport.md b/content/vac/p2p/nimlibp2p/vac/webrtc-transport.md deleted file mode 100644 index 1a56bc1b3..000000000 --- a/content/vac/p2p/nimlibp2p/vac/webrtc-transport.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: "WebRTC Transport" ---- -## `vac:p2p:nimlibp2p:vac:webrtc-transport` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff', - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - WebRTC Transport: 2023-04-01, 2023-07-31 -``` - -- status: 70% -- CC: Diego - -### Description - - -### Deliverables - - diff --git a/content/vac/rfc/index.md b/content/vac/rfc/index.md deleted file mode 100644 index b3d713974..000000000 --- a/content/vac/rfc/index.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: RFC Specifications Service Unit -tags: -- rfc -- vac -date: 2023-08-25 -lastmod: 2023-09-06 ---- - -## `vac:rfc:` - ---- - -### `rfc:status:` - -* [[vac/rfc/rfc/status/port-status-specs|port-status-specs]] - -### `rfc:nomos:` - -* [[vac/rfc/rfc/nomos/carnot-specification|carnot-specification]] -* [[vac/rfc/rfc/nomos/carnot-threat-model-informational|carnot-threat-model-informational ]] -* [[vac/rfc/rfc/nomos/carnot-vote-2-3rds-vote-aggregation-specification|carnot-vote-2-3rds-vote-aggregation-specification ]] -* [[vac/rfc/rfc/nomos/inter-chain-protocol-specification|inter-chain-protocol-specification ]] -* [[vac/rfc/rfc/nomos/multi-leader-and-multi-overlay-carnot-specification|multi-leader-and-multi-overlay-carnot-specification ]] - diff --git a/content/vac/rfc/rfc/nomos/carnot-specification.md b/content/vac/rfc/rfc/nomos/carnot-specification.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/rfc/rfc/nomos/carnot-threat-model-informational.md b/content/vac/rfc/rfc/nomos/carnot-threat-model-informational.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/rfc/rfc/nomos/carnot-vote-2-3rds-vote-aggregation-specification.md b/content/vac/rfc/rfc/nomos/carnot-vote-2-3rds-vote-aggregation-specification.md deleted file mode 100644 index 8daeda0ee..000000000 --- a/content/vac/rfc/rfc/nomos/carnot-vote-2-3rds-vote-aggregation-specification.md +++ /dev/null @@ -1 +0,0 @@ -- part of the DR roadmap: [[carnot-vote-2-3rds-vote-aggregation-specification| carnot-vote-2-3rds-vote-aggregation-specification ]] diff --git a/content/vac/rfc/rfc/nomos/inter-chain-protocol-specification.md b/content/vac/rfc/rfc/nomos/inter-chain-protocol-specification.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/rfc/rfc/nomos/multi-leader-and-multi-overlay-carnot-specification.md b/content/vac/rfc/rfc/nomos/multi-leader-and-multi-overlay-carnot-specification.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/vac/rfc/rfc/status/port-status-specs.md b/content/vac/rfc/rfc/status/port-status-specs.md deleted file mode 100644 index 07f73fd81..000000000 --- a/content/vac/rfc/rfc/status/port-status-specs.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -title: "Port Status Specs" ---- -## `vac:rfc:rfc:status:port-status-specs` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Port Status Spec: 2023-08-01, 2023-11-31 -``` - -- status: 30% -- CC: r4bbit, Aaryamann - -### Description - - -This milestone comprises the first version of each of the specifications. Iterations on spec parlance and further enhancements will be covered in future milestones. -The goal we want to aim for is to take down and completely get rid of https://specs.status.im/ and its accompanying repo https://github.com/status-im/specs , so that all Status protocol specs are in the https://github.com/vacp2p/rfc repo - -Tasks: - -* determine which specs from https://specs.status.im/ are still relevant as protocol specs, and which old specs are no longer relevant and can be discarded -* out of the still relevant protocol specs that haven't yet been moved over to the Vac RFC repo, update these specs as needed and move them into the Vac RFC repo -* once done, take down https://specs.status.im/ and archive the https://github.com/vacp2p/rfc repo - -The new Status website will have a 'Specs' section inside the 'Developers' part of the website, and this Specs section will pull in and render all specs from https://rfc.vac.dev/ with "STATUS-" in their title. -Note that feature specs should NOT be added to the Vac RFC repo, only protocol specs should go here. - -RFCs to be moved / updates: - -* (todo add RFCs we already ported) -* [x] `6/PAYLOADS` (needs significant update) -* [x] `2/ACCOUNT` -* [x] `16/Keycard` (discuss with keycard team) -* `16/Push-Notifications` (raw, needs update) -* `10/waku-usage` (outdated, check if we need that, update to Waku 2 if makes sense) - -#### out of scope? - -* `14/Dapp browser API usage` (this is not part of chat SDK, is this still a RFC? API doc would be more fitting here.) -* `13/3RD-PARTY` (investigate, most likely out-of-scope as it is not a protocol spec) -* `8/EIPS` (clarify if we have to port this → this should not be an RFC, needs constant updates, link EIPS in RFCs where needed) - -#### stable - deprecated -(just copy these; confirm this is OK) - -* `4/whisper-mailserver` -* `11/Waku-Mailserver` - -### Justification - - -### Deliverables - -* https://rfc.vac.dev/spec/53/ -* https://rfc.vac.dev/spec/54/ -* https://rfc.vac.dev/spec/55/ -* https://rfc.vac.dev/spec/56/ -* https://rfc.vac.dev/spec/61/ -* https://rfc.vac.dev/spec/63/ - - diff --git a/content/vac/sc/g/codex/review-codex-contracts.md b/content/vac/sc/g/codex/review-codex-contracts.md deleted file mode 100644 index f21240532..000000000 --- a/content/vac/sc/g/codex/review-codex-contracts.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: "Review Codex Contracts" ---- -## `vac:sc::codex:review-codex-contracts` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Review Codex Contracts: 2023-09-15, 2023-10-31 -``` - -- status: 0% -- CC: r4bbit - -### Description - -Review the codex smartcontract and give feedback: https://github.com/codex-storage/codex-contracts-eth -More info: https://github.com/codex-storage/nim-codex/blob/master/codex/contracts/Readme.md - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/community-contracts-ERC20.md b/content/vac/sc/g/status/community-contracts-ERC20.md deleted file mode 100644 index 64e790c4e..000000000 --- a/content/vac/sc/g/status/community-contracts-ERC20.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: "Community Contracts ERC20" ---- -## `vac:sc:rlnp2p:status:community-contracts-erc20` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Community Contracts ERC20: 2023-08-01, 2023-11-31 -``` - -- status: 100% -- CC: Andrea - -### Description - -* https://github.com/status-im/communities-contracts/issues/13 - -#### Info - -This milestone comprises what the SC has to deliver towards the completion of Status No3 prio: - -`3) work on the Status Community ownership tokenisation smart contracts is the third priority` - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/community-contracts-ERC721.md b/content/vac/sc/g/status/community-contracts-ERC721.md deleted file mode 100644 index ceccb087c..000000000 --- a/content/vac/sc/g/status/community-contracts-ERC721.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Community Contracts ERC721" ---- -## `vac:sc::status:community-contracts-erc721` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Community Contracts ERC721: done, 2023-01-20, 2023-08-31 -``` - -- status: 100% -- CC: Andrea - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/community-contracts-deployer.md b/content/vac/sc/g/status/community-contracts-deployer.md deleted file mode 100644 index f191d83df..000000000 --- a/content/vac/sc/g/status/community-contracts-deployer.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: "Community Contracts Deployer" ---- -## `vac:sc::status:community-contracts-deployer` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Community Contracts Deployer: 2023-09-01, 2023-09-30 -``` - -- status: 100% -- CC: r4bbit - -### Description - - -### Justification - - -### Deliverables - -* https://github.com/status-im/communities-contracts/commit/e7d799b761e87166ecee4efaaede0b7a6cc367ad - -* https://goerli-optimism.etherscan.io/address/0xfFa8A255D905c909379859eA45B959D090DDC2d4 - -Test-net addresses: - -``` -CommunityTokenDeployer 0xfFa8A255D905c909379859eA45B959D090DDC2d4 -CommunityOwnerTokenRegistry 0x99F0Eeb7E9F1Da6CA9DDf77dD7810B665FD85750 -CommunityOwnerTokenFactory 0x76d0E484e7c3398922636960Ab33bDe6E9936D81 -CommunityMasterTokenFactory 0x420BE6568c6E09782CEAE1575495Cd6C1c7EA04D -``` - - - diff --git a/content/vac/sc/g/status/community-contracts-maintenance.md b/content/vac/sc/g/status/community-contracts-maintenance.md deleted file mode 100644 index 0c3aa9f06..000000000 --- a/content/vac/sc/g/status/community-contracts-maintenance.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "Community Contracts Maintenance" ---- -## `vac:sc::status:community-contracts-maintenance` ---- - -- status: ongoing -- CC: Andrea - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/community-curation-contracts.md b/content/vac/sc/g/status/community-curation-contracts.md deleted file mode 100644 index 2377e8aab..000000000 --- a/content/vac/sc/g/status/community-curation-contracts.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -title: "Community Curation dapp Contracts" -description: "description" ---- -## `vac:sc::status:community-curation-dapp-contracts` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Production Readiness: 2023-09-15, 2023-10-21 -``` - -- status: 95% -- CC: Ricardo - -### Description - -Depends on finishing [[ vac/sc/g/status/snt-optimism-bridge | SNT-optimism-bridge ]] - -The milestone has to be completed (can be a mitigation / preliminary fix): - -* https://github.com/status-im/community-dapp/issues/64 -* https://github.com/status-im/community-dapp/issues/65 - -#### Info - -This milestone comprises what the SC has to deliver towards the completion of Status No2 prio: - -`2) if any further work needs to be done on the Community Directory Curation dApp for the initial launch this is second priority` - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/governance-contract-mvp.md b/content/vac/sc/g/status/governance-contract-mvp.md deleted file mode 100644 index 1c6b23eba..000000000 --- a/content/vac/sc/g/status/governance-contract-mvp.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "Governance Contract MVP" ---- -## `vac:sc::status:governance-contract-mvp` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Governance Contract MVP: 2023-08-01, 2023-09-30 -``` - -- status: 20% -- CC: Ricardo - -### Description - -* voting within communities -* replace the current community-dapp voting contracts https://github.com/status-im/community-dapp/tree/master/packages/contracts/contracts -* testing is out of scope for that milestone - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/mimime-token-enhancement.md b/content/vac/sc/g/status/mimime-token-enhancement.md deleted file mode 100644 index 5ba827810..000000000 --- a/content/vac/sc/g/status/mimime-token-enhancement.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: "MimiMe Token Enhancements" -description: "Enhancements of the MimiMe Token after Optimism Deployment" ---- -## `vac:sc::status:minime-token-enhancement` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - SNT Optimism Bridge: -``` - -- status: 20% -- CC: Ricardo - -### Description - -This is future work. Not pressing atm. - -* https://github.com/vacp2p/minime/issues/6 - - low hanging fruit regarding gas savings - - will setup a follow up milestone for further improvements - -### Justification - -### Deliverables - diff --git a/content/vac/sc/g/status/mimime-token-maintenance.md b/content/vac/sc/g/status/mimime-token-maintenance.md deleted file mode 100644 index f9eceea34..000000000 --- a/content/vac/sc/g/status/mimime-token-maintenance.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "MimiMe Token Maintenance" -description: "Maintenance of the MimiMe Token" ---- -## `vac:sc::status:minime-token-maintenance` ---- - -- status: ongoing -- CC: Ricardo - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/snt-optimism-bridge.md b/content/vac/sc/g/status/snt-optimism-bridge.md deleted file mode 100644 index fb368509e..000000000 --- a/content/vac/sc/g/status/snt-optimism-bridge.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: "SNT Optimism Bridge" -description: "Finalizig work necessary to bridge SNT to Optimism" ---- -## `vac:sc::status:snt-optimism-bridge` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - SNT Optimism Bridge: 2023-09-01, 2023-09-30 -``` - -- status: 100% -- CC: Ricardo - -### Description - -This milestone comprises issues that have to be completed to bridge SNT to Optimism. -These issues are part of enhancing the MimiMe token. - -* https://github.com/vacp2p/minime/issues/19 -* https://github.com/vacp2p/minime/issues/17 -* https://github.com/vacp2p/minime/issues/7 -* https://github.com/vacp2p/minime/issues/5 -* https://github.com/vacp2p/minime/issues/31 - -Following enhancments to the MimiMe token (future work) are tracked in: -[[ vac/sc/g/status/mimime-token-enhancement | mimime-token-enhancement ]] - -This milestone also contains: -* a listing of issues identified in the 1st Certora audit, which we addressed -* a listing of issues that are now out of scope because we forked the MimiMe repo, and removed parts we do not need -* Certora checking - -#### Info - -This milestone comprises what the SC has to deliver towards the completion of Status No1 prio: - -`the SNT contract for deployment on Optimism is top priority` - -Note: This milestone includes deployment on Goerli and "manual" testing. -Integration tests for this milestone is out of scope for this milestone. -If integration tests are desired, we would track and address this in a future milestone. - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/g/status/staking-contract-maintenance.md b/content/vac/sc/g/status/staking-contract-maintenance.md deleted file mode 100644 index 394b85791..000000000 --- a/content/vac/sc/g/status/staking-contract-maintenance.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: "Status Staking Contract Maintenance Details" ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Status - Staking contract maintenance :, 2023-01-20, 2023-08-31 -``` -- due date: 2023/08/31 -- status: 100% - -### Description -Status staking contract MVP maintenance - -### Deliverable -TBD \ No newline at end of file diff --git a/content/vac/sc/g/status/staking-contract-mvp.md b/content/vac/sc/g/status/staking-contract-mvp.md deleted file mode 100644 index 5a210351d..000000000 --- a/content/vac/sc/g/status/staking-contract-mvp.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: Status Staking Contract MVP ---- -## `vac:sc::status:staking-contract-mvp` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Status - Staking Contract :, 2023-01-20, 2023-08-31 -``` -- due date: -- status: 100% - -### Description -MVP for the Status staking contract - -### Deliverable -TBD diff --git a/content/vac/sc/g/status/staking-contract.md b/content/vac/sc/g/status/staking-contract.md deleted file mode 100644 index 06d2fd51b..000000000 --- a/content/vac/sc/g/status/staking-contract.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -title: "Status Staking Contract" ---- -## `vac:sc::status:staking-contract` -G -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Status Staking Contract: 2023-09-01, 2023-10-31 -``` - -- status: 10% -- CC: Ricardo - -### Description - -This milestone comprises a set of improvements on and extensions to the current state of the staking contract [[staking-contract| staking-contract]]. - -Details can be found here: https://www.notion.so/Implementing-SNT-Staking-Contract-Issues-Differences-2de74e7c19124e78b1c9490300a84422 -This document is the basis for the following issues: - -* https://github.com/logos-co/staking/issues/9 -* https://github.com/logos-co/staking/issues/10 -* https://github.com/logos-co/staking/issues/11 -* https://github.com/logos-co/staking/issues/12 -* https://github.com/logos-co/staking/issues/13 -* https://github.com/logos-co/staking/issues/14 -* https://github.com/logos-co/staking/issues/15 -* https://github.com/logos-co/staking/issues/16 -* https://github.com/logos-co/staking/issues/17 -* https://github.com/logos-co/staking/issues/18 - -The milestone is achived when these issues have been resolved. - -### Justification - - -### Deliverables - - diff --git a/content/vac/sc/g/vac/rln-contract-support.md b/content/vac/sc/g/vac/rln-contract-support.md deleted file mode 100644 index 45edb2d57..000000000 --- a/content/vac/sc/g/vac/rln-contract-support.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Vac RLN Contract Support Details ---- -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Vac - RLN Contract Support :, 2023-01-20, 2023-09-15 -``` -- due date: 2023/09/15 -- status: 10% - -### Description -Kick-off task for the Vac SC Unit diff --git a/content/vac/sc/g/vac/secureum-upskilling.md b/content/vac/sc/g/vac/secureum-upskilling.md deleted file mode 100644 index 424b0c334..000000000 --- a/content/vac/sc/g/vac/secureum-upskilling.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "Secureum Upskilling" ---- -## `vac:sc::vac:secureum-upskilling` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - tickInterval 1month - dateFormat YYYY-MM-DD - section Status - Secureum Upskilling: 2023-08-15, 2023-10-15 -``` - -- status: 70% -- CC: team - -### Description - - -### Justification - - -### Deliverables - - - diff --git a/content/vac/sc/index.md b/content/vac/sc/index.md deleted file mode 100644 index 6efb0a135..000000000 --- a/content/vac/sc/index.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: Smart Contracts Service Unit -tags: -- sc -- vac -date: 2023-08-25 -lastmod: 2023-09-21 ---- - -## `vac:sc::` ---- - -### `status:` -* [x] [[ vac/sc/g/status/community-contracts-ERC721 | community-contracts-ERC721 ]] -* [x] [[ vac/sc/g/status/community-contracts-ERC20 | community-contracts-ERC20 ]] -* [x] [[ vac/sc/g/status/community-contracts-deployer | community-contracts-deployer ]] -* [[ vac/sc/g/status/community-contracts-maintenance | community-contracts-maintenance ]] -* [[ vac/sc/g/status/community-curation-contracts | community-curation-contracts ]] -* [x] [[ vac/sc/g/status/snt-optimism-bridge | SNT-optimism-bridge ]] -* [[ vac/sc/g/status/mimime-token-enhancement | mimime-token-enhancement ]] -* [[ vac/sc/g/status/mimime-token-maintenance | mimime-token-maintenance ]] -* [[ vac/sc/g/status/governance-contract-mvp | governance-contract-mvp ]] -* [x] [[ vac/sc/g/status/staking-contract-mvp | staking-contract-mvp ]] -* [[ vac/sc/g/status/staking-contract | staking-contract ]] -* [[ vac/sc/g/status/staking-contract-maintenance | staking-contract-maintenance ]] - -### `codex:` -* [[ vac/sc/g/codex/review-codex-contracts | review-codex-contracts ]] - -### `vac:` -* [[ vac/sc/g/vac/secureum-upskilling | secureum-upskilling ]] -* [[ vac/sc/g/vac/rln-contract-support | rln-contract-support ]] - diff --git a/content/vac/tke/g/codex/economic-analysis.md b/content/vac/tke/g/codex/economic-analysis.md deleted file mode 100644 index 827b4d4f8..000000000 --- a/content/vac/tke/g/codex/economic-analysis.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "Codex Economic Analysis" ---- -### `vac:tke::codex:economic-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Codex - Economic Analysis :, 2023-01-20, 2023-08-30 -``` - -- status: 50% -- CC: Matty - -### Description -Codex economic analysis, Codex token utility, Codex collateral management - -### Justification -Per Dimitry and Jesse, required by Codex team for completing implementation of system and planning launch - diff --git a/content/vac/tke/g/nomos/economic-analysis.md b/content/vac/tke/g/nomos/economic-analysis.md deleted file mode 100644 index d66b79a55..000000000 --- a/content/vac/tke/g/nomos/economic-analysis.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "Nomos Economic Analysis" ---- -## `vac:tke::nomos:economic-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Nomos - Economic Analysis :, 2023-05-01, 2023-10-31 -``` -- status: 30% -- CC: Frederico - -### Description - -Nomos economic analysis, Nomos token utility, requirements and constraints - -### Justification - -Required for ensuring economic security and censorship resistance of Nomos chain diff --git a/content/vac/tke/g/status/snt-governance-proposal.md b/content/vac/tke/g/status/snt-governance-proposal.md deleted file mode 100644 index 68f806d1f..000000000 --- a/content/vac/tke/g/status/snt-governance-proposal.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: SNT Governance Proposal ---- - -## `vac:tke::status:SNT-governance-proposal` ---- - -due: TDB -status: TDB -CC: Matty - - -## Description - -* took precedence over SNT litepaper -* first draft being prepared for next review with John on 2023/09/12 - -## Justification - -* Per John’s request, high importance for involving community for relaunch of Status app and refresh of SNT token - diff --git a/content/vac/tke/g/status/snt-litepaper.md b/content/vac/tke/g/status/snt-litepaper.md deleted file mode 100644 index 8729f91ff..000000000 --- a/content/vac/tke/g/status/snt-litepaper.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: SNT Litepaper ---- -## `vac:tke::status:SNT-litepaper` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Status - SNT Litepaper: 2023-01-20, 2023-08-30 -``` - -- status: 70% - delayed: governance proposal taking precedence -- CC: Matty - -## Description - -* delayed, other milestones took precedence -* Per confirmation with John on 2023/08/22 litepaper is not a pressing need, much lower priority than governance proposal - -## Justification - -* helpful to support relaunch of Status app and describe SNT’s new staking features diff --git a/content/vac/tke/g/status/snt-staking.md b/content/vac/tke/g/status/snt-staking.md deleted file mode 100644 index 739933ddd..000000000 --- a/content/vac/tke/g/status/snt-staking.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: "SNT Staking" ---- -## `vac:tke::status:SNT-staking` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Status - SNT Staking :, 2023-01-20, 2023-08-30 -``` - -- status: 82% -- CC: Frederico (Python), Martin -- collab: [[vac/sc/index|smart contracts team]] - -### Description: - - -### Risks - -* implementation of the smart contract is being handed off to smart contract team - diff --git a/content/vac/tke/g/waku/economic-analysis.md b/content/vac/tke/g/waku/economic-analysis.md deleted file mode 100644 index 64da5a610..000000000 --- a/content/vac/tke/g/waku/economic-analysis.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: "Waku Economic Analysis" ---- -## `vac:tke::waku:economic-analysis` ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Waku - Economic Analysis :, 2023-06-01, 2023-11-30 -``` -- status: 10% -- CC: Martin - -#### Description - -Waku economic analysis diff --git a/content/vac/tke/index.md b/content/vac/tke/index.md deleted file mode 100644 index ebb9192ca..000000000 --- a/content/vac/tke/index.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Token Engineering Service Unit -tags: -- p2p -- vac -date: 2023-08-25 -lastmod: 2023-09-09 ---- - -## `vac:tke::` ---- - - -### `status:` -* [[vac/tke/g/status/snt-litepaper|snt-lightpaper]] -* [[vac/tke/g/status/snt-governance-proposal|SNT-governance-proposal]] -* [[vac/tke/g/status/snt-staking|SNT-staking]] - -### `codex:` -* [[vac/tke/g/codex/economic-analysis|economic-analysis]] - -### `nomos:` -* [[vac/tke/g/nomos/economic-analysis|economic-analysis]] - -### `waku:` -* [[vac/tke/g/waku/economic-analysis|economic-analysis]] diff --git a/content/vac/updates/2023-07-10.md b/content/vac/updates/2023-07-10.md deleted file mode 100644 index 549d77ac1..000000000 --- a/content/vac/updates/2023-07-10.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: "2023-07-10 Vac Weekly" -tags: -- "vac-updates" -date: 2023-07-10 -lastmod: 2023-07-16 ---- -- *vc::Deep Research* - - refined deep research roadmaps https://github.com/vacp2p/research/issues/190, https://github.com/vacp2p/research/issues/192 - - working on comprehensive current/related work study on Validator Privacy - - working on PoC of Tor push in Nimbus - - working towards comprehensive current/related work study on gossipsub scaling -- *vsu::P2P* - - Prepared Paris talks - - Implemented perf protocol to compare the performances with other libp2ps https://github.com/status-im/nim-libp2p/pull/925 -- *vsu::Tokenomics* - - Fixing bugs on the SNT staking contract; - - Definition of the first formal verification tests for the SNT staking contract; - - Slides for the Paris off-site -- *vsu::Distributed Systems Testing* - - Replicated message rate issue (still on it) - - First mockup of offline data - - Nomos consensus test working -- *vip::zkVM* - - hiring - - onboarding new researcher - - presentation on ECC during Logos Research Call (incl. preparation) - - more research on nova, considering additional options - - Identified 3 research questions to be taken into consideration for the ZKVM and the publication - - Researched Poseidon implementation for Nova, Nova-Scotia, Circom -- *vip::RLNP2P* - - finished rln contract for waku product - https://github.com/waku-org/rln-contract - - fixed homebrew issue that prevented zerokit from building - https://github.com/vacp2p/zerokit/commit/8a365f0c9e5c4a744f70c5dd4904ce8d8f926c34 - - rln-relay: verify proofs based upon bandwidth usage - https://github.com/waku-org/nwaku/commit/3fe4522a7e9e48a3196c10973975d924269d872a - - RLN contract audit cont' https://hackmd.io/@blockdev/B195lgIth diff --git a/content/vac/updates/2023-07-17.md b/content/vac/updates/2023-07-17.md deleted file mode 100644 index 429b82aa5..000000000 --- a/content/vac/updates/2023-07-17.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: "2023-07-17 Vac weekly" -tags: - - "vac-updates" -date: 2023-07-17 -lastmod: 2023-08-03 -draft: false ---- - -**Last week** -- *vc* - - Vac day in Paris (13th) -- *vc::Deep Research* - - working on comprehensive current/related work study on Validator Privacy - - working on PoC of Tor push in Nimbus: setting up goerli nim-eth2 node - - working towards comprehensive current/related work study on gossipsub scaling -- *vsu::P2P* - - Paris offsite Paris (all CCs) -- *vsu::Tokenomics* - - Bugs found and solved in the SNT staking contract - - attend events in Paris -- *vsu::Distributed Systems Testing* - - Events in Paris - - QoS on all four infras - - Continue work on theoretical gossipsub analysis (varying regular graph sizes) - - Peer extraction using WLS (almost finished) - - Discv5 testing - - Wakurtosis CI improvements - - Provide offline data -- *vip::zkVM* - - onboarding new researcher - - Prepared and presented ZKVM work during VAC offsite - - Deep research on Nova vs Stark in terms of performance and related open questions - - researching Sangria - - Worked on NEscience document (https://www.notion.so/Nescience-WIP-0645c738eb7a40869d5650ae1d5a4f4e) - - zerokit: - - worked on PR for arc-circom -- *vip::RLNP2P* - - offsite Paris - -**This week** -- *vc* -- *vc::Deep Research* - - working on comprehensive current/related work study on Validator Privacy - - working on PoC of Tor push in Nimbus - - working towards comprehensive current/related work study on gossipsub scaling -- *vsu::P2P* - - EthCC & Logos event Paris (all CCs) -- *vsu::Tokenomics* - - Attend EthCC and side events in Paris - - Integrate staking contracts with radCAD model - - Work on a new approach for Codex collateral problem -- *vsu::Distributed Systems Testing* - - Events in Paris - - Finish peer extraction, plot the peer connections; script/runs for the analysis, and add data to the Tech Report - - Restructure the Analysis script and start modelling Status control messages - - Split Wakurtosis analysis module into separate repository (delayed) - - Deliver simulation results (incl fixing discv5 error with new Kurtosis version) - - Second iteration Nomos CI -- *vip::zkVM* - - Continue researching on Nova open questions and Sangria - - Draft the benchmark document (by the end of the week) - - research hardware for benchmarks - - research Halo2 cont' - - zerokit: - - merge a PR for deployment of arc-circom - - deal with arc-circom master fail -- *vip::RLNP2P* - - offsite paris -- *blockers* - - *vip::zkVM:zerokit*: ark-circom deployment to crates io; contact to ark-circom team \ No newline at end of file diff --git a/content/vac/updates/2023-07-24.md b/content/vac/updates/2023-07-24.md deleted file mode 100644 index 25def57f1..000000000 --- a/content/vac/updates/2023-07-24.md +++ /dev/null @@ -1,112 +0,0 @@ ---- -title: "2023-08-03 Vac weekly" -tags: - - "vac-updates" -date: 2023-08-03 -lastmod: 2023-08-03 -draft: false ---- - -NOTE: This is a first experimental version moving towards the new reporting structure: - -**Last week** -- *vc* -- *vc::Deep Research* - - milestone (15%, 2023/11/30) paper on gossipsub improvements ready for submission - - related work section - - milestone (15%, 2023/08/31) Nimbus Tor-push PoC - - basic torpush encode/decode ( https://github.com/vacp2p/nim-libp2p-experimental/pull/1 ) - - milestone (15%, 2023/11/30) paper on Tor push validator privacy - - (focus on Tor-push PoC) -- *vsu::P2P* - - admin/misc - - EthCC (all CCs) -- *vsu::Tokenomics* - - admin/misc - - Attended EthCC and side events in Paris - - milestone (30%, 2023/09/30) Codex economic analysis, Codex token utility, Codex collateral management - - Kicked off a new approach for Codex collateral problem - - milestone (50%, 2023/08/30) SNT staking smart contract - - Integrated SNT staking contracts with Python - - milestone (50%, 2023/07/14) SNT litepaper - - (delayed) - - milestone(30%, 2023/09/29) Nomos Token: requirements and constraints -- *vsu::Distributed Systems Testing* - - milestone (95%, 2023/07/31) Wakurtosis Waku Report - - Add timout to injection async call in WLS to avoid further issues (PR #139 https://github.com/vacp2p/wakurtosis/pull/139) - - Plotting & analyse 100 msg/s off line Prometehus data - - milestone (90%, 2023/07/31) Nomos CI testing - - fixed errors in Nomos consensus simulation - - milestone (30%, ...) gossipsub model analysis - - add config options to script, allowing to load configs that can be directly compared to Wakurtosis results - - added support for small world networks - - admin/misc - - Interviews & reports for SE and STA positions - - EthCC (1 CC) -- *vip::zkVM* - - milestone(50%, 2023/08/31) background/research on existing proof systems (nova, sangria...) - - (write ups will be available here: https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451) - - Solved the open questions on Nova adn completed the document (will update the page) - - Reviewed Nescience and working on a document - - Reviewed partly the write up on FHE - - writeup for Nova and Sangria; research on super nova - - reading a new paper revisiting Nova (https://eprint.iacr.org/2023/969) - - milestone (50%, 2023/08/31) new fair benchmarks + recursive implementations - - zkvm - - Researching Nova to understand the folding technique for ZKVM adaptation - - zerokit - - Rostyslav became circom-compat maintainer -- *vip::RLNP2P* - - milestone (100%, 2023/07/31) rln-relay testnet 3 completed and retro - - completed - - milestone (95%, 2023/07/31) RLN-Relay Waku production readiness - - admin/misc - - EthCC + offsite - -**This week** -- *vc* -- *vc::Deep Research* - - milestone (15%, 2023/11/30) paper on gossipsub improvements ready for submission - - working on contributions section, based on https://hackmd.io/X1DoBHtYTtuGqYg0qK4zJw - - milestone (15%, 2023/08/31) Nimbus Tor-push PoC - - working on establishing a connection via nim-libp2p tor-transport - - setting up goerli test node (cont') - - milestone (15%, 2023/11/30) paper on Tor push validator privacy - - continue working on paper -- *vsu::P2P* - - milestone (...) - - Implement ChokeMessage for GossipSub - - Continue "limited flood publishing" (https://github.com/status-im/nim-libp2p/pull/911) -- *vsu::Tokenomics* - - admin/misc: - - (3 CC days off) - - Catch up with EthCC talks that we couldn't attend (schedule conflicts) - - milestone (50%, 2023/07/14) SNT litepaper - - Start building the SNT agent-based simulation -- *vsu::Distributed Systems Testing* - - milestone (100%, 2023/07/31) Wakurtosis Waku Report - - finalize simulations - - finalize report - - milestone (100%, 2023/07/31) Nomos CI testing - - finalize milestone - - milestone (30%, ...) gossipsub model analysis - - Incorporate Status control messages - - admin/misc - - Interviews & reports for SE and STA positions - - EthCC (1 CC) -- *vip::zkVM* - - milestone(50%, 2023/08/31) background/research on existing proof systems (nova, sangria...) - - Refine the Nescience WIP and FHE documents - - research HyperNova - - milestone (50%, 2023/08/31) new fair benchmarks + recursive implementations - - Continue exploring Nova and other ZKPs and start technical writing on Nova benchmarks - - zkvm - - zerokit - - circom: reach an agreement with other maintainers on master branch situation -- *vip::RLNP2P* - - maintenance - - investigate why docker builds of nwaku are failing [zerokit dependency related] - - documentation on how to use rln for projects interested (https://discord.com/channels/864066763682218004/1131734908474236968/1131735766163267695)(https://ci.infra.status.im/job/nim-waku/job/manual/45/console) - - milestone (95%, 2023/07/31) RLN-Relay Waku production readiness - - revert rln bandwidth reduction based on offsite discussion, move to different validator -- *blockers* \ No newline at end of file diff --git a/content/vac/updates/2023-07-31.md b/content/vac/updates/2023-07-31.md deleted file mode 100644 index f7fc3e9ec..000000000 --- a/content/vac/updates/2023-07-31.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: "2023-07-31 Vac weekly" -tags: - - "vac-updates" -date: 2023-07-31 -lastmod: 2023-08-03 -draft: false ---- - -- *vc::Deep Research* - - milestone (20%, 2023/11/30) paper on gossipsub improvements ready for submission - - proposed solution section - - milestone (15%, 2023/08/31) Nimbus Tor-push PoC - - establishing torswitch and testing code - - milestone (15%, 2023/11/30) paper on Tor push validator privacy - - addressed feedback on current version of paper -- *vsu::P2P* - - nim-libp2p: (100%, 2023/07/31) GossipSub optimizations for ETH's EIP-4844 - - Merged IDontWant (https://github.com/status-im/nim-libp2p/pull/934) & Limit flood publishing (https://github.com/status-im/nim-libp2p/pull/911) 𝕏 - - This wraps up the "mandatory" optimizations for 4844. We will continue working on stagger sending and other optimizations - - nim-libp2p: (70%, 2023/07/31) WebRTC transport -- *vsu::Tokenomics* - - admin/misc - - 2 CCs off for the week - - milestone (30%, 2023/09/30) Codex economic analysis, Codex token utility, Codex collateral management - - milestone (50%, 2023/08/30) SNT staking smart contract - - milestone (50%, 2023/07/14) SNT litepaper - - milestone (30%, 2023/09/29) Nomos Token: requirements and constraints -- *vsu::Distributed Systems Testing* - - admin/misc - - Analysis module extracted from wakurtosis repo (https://github.com/vacp2p/wakurtosis/pull/142, https://github.com/vacp2p/DST-Analysis) - - hiring - - milestone (99%, 2023/07/31) Wakurtosis Waku Report - - Re-run simulations - - merge Discv5 PR (https://github.com/vacp2p/wakurtosis/pull/129). - - finalize Wakurtosis Tech Report v2 - - milestone (100%, 2023/07/31) Nomos CI testing - - delivered first version of Nomos CI integration (https://github.com/vacp2p/wakurtosis/pull/141) - - milestone (30%, 2023/08/31 gossipsub model: Status control messages - - Waku model is updated to model topics/content-topics -- *vip::zkVM* - - milestone(50%, 2023/08/31) background/research on existing proof systems (nova, sangria...) - - achievment :: nova questions answered (see document in Project: https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451) - - Nescience WIP done (to be delivered next week, priority) - - FHE review (lower prio) - - milestone (50%, 2023/08/31) new fair benchmarks + recursive implementations - - Working on discoveries about other benchmarks done on plonky2, starky, and halo2 - - zkvm - - zerokit - - fixed ark-circom master - - achievment :: publish ark-circom https://crates.io/crates/ark-circom - - achievment :: publish zerokit_utils https://crates.io/crates/zerokit_utils - - achievment :: publish rln https://crates.io/crates/rln (𝕏 jointly with RLNP2P) -- *vip::RLNP2P* - - milestone (100%, 2023/07/31) RLN-Relay Waku production readiness - - Updated rln-contract to be more modular - and downstreamed to waku fork of rln-contract - https://github.com/vacp2p/rln-contract and http://github.com/waku-org/waku-rln-contract - - Deployed to sepolia - - Fixed rln enabled docker image building in nwaku - https://github.com/waku-org/nwaku/pull/1853 - - zerokit: - - achievement :: zerokit v0.3.0 release done - https://github.com/vacp2p/zerokit/releases/tag/v0.3.0 (𝕏 jointly with zkVM) diff --git a/content/vac/updates/2023-08-07.md b/content/vac/updates/2023-08-07.md deleted file mode 100644 index 46a50604f..000000000 --- a/content/vac/updates/2023-08-07.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: "2023-08-07 Vac weekly" -tags: - - "vac-updates" -date: 2023-08-07 -lastmod: 2023-08-07 -draft: false ---- - - -More info on Vac Milestones, including due date and progress (currently working on this, some milestones do not have the new format yet, first version planned for this week): -https://www.notion.so/Vac-Roadmap-907df7eeac464143b00c6f49a20bb632 - -**Vac week 32** August 7th -- *vsu::P2P* - - `vac:p2p:nim-libp2p:vac:maintenance` - - Improve gossipsub DDoS resistance https://github.com/status-im/nim-libp2p/pull/920 - - `vac:p2p:nim-chronos:vac:maintenance` - - Remove hard-coded ports from test https://github.com/status-im/nim-chronos/pull/429 - - Investigate flaky test using REUSE_PORT -- *vsu::Tokenomics* - - (...) -- *vsu::Distributed Systems Testing* - - `vac:dst:wakurtosis:waku:techreport` - - delivered: Wakurtosis Tech Report v2 (https://docs.google.com/document/d/1U3bzlbk_Z3ZxN9tPAnORfYdPRWyskMuShXbdxCj4xOM/edit?usp=sharing) - - `vac:dst:wakurtosis:vac:rlog` - - working on research log post on Waku Wakurtosis simulations - - `vac:dst:gsub-model:status:control-messages` - - delivered: the analytical model can now handle Status messages; status analysis now has a separate cli and config; handles top 5 message types (by expected bandwidth consumption) - - `vac:dst:gsub-model:vac:refactoring` - - Refactoring and bug fixes - - introduced and tested 2 new analytical models - - `vac:dst:wakurtosis:waku:topology-analysis` - - delivered: extracted into separate module, independent of wls message - - `vac:dst:wakurtosis:nomos:ci-integration_02` - - planning - - `vac:dst:10ksim:vac:10ksim-bandwidth-test` - - planning; check usage of new codex simulator tool (https://github.com/codex-storage/cs-codex-dist-tests) -- *vip::zkVM* - - `vac:zkvm::vac:research-existing-proof-systems` - - 90% Nescience WIP done – to be reviewed carefully since no other follow up documents were giiven to me - - 50% FHE review - needs to be refined and summarized - - finished SuperNova writeup ( https://www.notion.so/SuperNova-research-document-8deab397f8fe413fa3a1ef3aa5669f37 ) - - researched starky - - 80% Halo2 notes ( https://www.notion.so/halo2-fb8d7d0b857f43af9eb9f01c44e76fb9 ) - - `vac:zkvm::vac:proof-system-benchmarks` - - More discoveries on benchmarks done on ZK-snarks and ZK-starks but all are high level - - Viewed some circuits on Nova and Poseidon - - Read through Halo2 code (and Poseidon code) from Axiom -- *vip::RLNP2P* - - `vac:acz:rlnp2p:waku:production-readiness` - - Waku rln contract registry - https://github.com/waku-org/waku-rln-contract/pull/3 - - mark duplicated messages as spam - https://github.com/waku-org/nwaku/pull/1867 - - use waku-org/waku-rln-contract as a submodule in nwaku - https://github.com/waku-org/nwaku/pull/1884 - - `vac:acz:zerokit:vac:maintenance` - - Fixed atomic_operation ffi edge case error - https://github.com/vacp2p/zerokit/pull/195 - - docs cleanup - https://github.com/vacp2p/zerokit/pull/196 - - fixed version tags - https://github.com/vacp2p/zerokit/pull/194 - - released zerokit v0.3.1 - https://github.com/vacp2p/zerokit/pull/198 - - marked all functions as virtual in rln-contract for inheritors - https://github.com/vacp2p/rln-contract/commit/a092b934a6293203abbd4b9e3412db23ff59877e - - make nwaku use zerokit v0.3.1 - https://github.com/waku-org/nwaku/pull/1886 - - rlnp2p implementers draft - https://hackmd.io/@rymnc/rln-impl-w-waku - - `vac:acz:zerokit:vac:zerokit-v0.4` - - zerokit v0.4.0 release planning - https://github.com/vacp2p/zerokit/issues/197 -- *vc::Deep Research* - - `vac:dr:valpriv:vac:tor-push-poc` - - redesigned the torpush integration in nimbus https://github.com/vacp2p/nimbus-eth2-experimental/pull/2 - - `vac:dr:valpriv:vac:tor-push-relwork` - - Addressed further comments in paper, improved intro, added source level variation approach - - `vac:dr:gsub-scaling:vac:gossipsub-improvements-tech-report` - - cont' work on the document \ No newline at end of file diff --git a/content/vac/updates/2023-08-14.md b/content/vac/updates/2023-08-14.md deleted file mode 100644 index 2817d56e6..000000000 --- a/content/vac/updates/2023-08-14.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "2023-08-17 Vac weekly" -tags: - - "vac-updates" -date: 2023-08-14 -lastmod: 2023-08-17 -draft: false ---- - - -Vac Milestones: https://www.notion.so/Vac-Roadmap-907df7eeac464143b00c6f49a20bb632 - -# Vac week 33 August 14th - ---- -## *vsu::P2P* -### `vac:p2p:nim-libp2p:vac:maintenance` -- Improve gossipsub DDoS resistance https://github.com/status-im/nim-libp2p/pull/920 -- delivered: Perf protocol https://github.com/status-im/nim-libp2p/pull/925 -- delivered: Test-plans for the perf protocol https://github.com/lchenut/test-plans/tree/perf-nim -- Bandwidth estimate as a parameter (waiting for final review) https://github.com/status-im/nim-libp2p/pull/941 -### `vac:p2p:nim-chronos:vac:maintenance` -- delivered: Remove hard-coded ports from test https://github.com/status-im/nim-chronos/pull/429 -- delivered: fixed flaky test using REUSE_PORT https://github.com/status-im/nim-chronos/pull/438 - ---- -## *vsu::Tokenomics* - - admin/misc: - - (5 CC days off) -### `vac:tke::codex:economic-analysis` -- Filecoin economic structure and Codex token requirements -### `vac:tke::status:SNT-staking` -- tests with the contracts -### `vac:tke::nomos:economic-analysis` -- resume discussions with Nomos team - ---- -## *vsu::Distributed Systems Testing (DST)* -### `vac:dst:wakurtosis:waku:techreport` -- 1st Draft of Wakurtosis Research Blog (https://github.com/vacp2p/vac.dev/pull/123) -- Data Process / Analysis of Non-Discv5 K13 Simulations (Wakurtosis Tech Report v2.5) -### `vac:dst:shadow:vac:basic-shadow-simulation` -- Basic Shadow Simulation of a gossipsub node (Setup, 5nodes) -### `vac:dst:10ksim:vac:10ksim-bandwidth-test` -- Try and plan on how to refactor/generalize testing tool from Codex. -- Learn more about Kubernetes -### `vac:dst:wakurtosis:nomos:ci-integration_02` -- Enable subnetworks -- Plan how to use wakurtosis with fixed version -### `vac:dst:eng:vac:bundle-simulation-data` -- Run requested simulations - ---- -## *vsu:Smart Contracts (SC)* -### `vac:sc::vac:secureum-upskilling` - - Learned about - - cold vs warm storage reads and their gas implications - - UTXO vs account models - - `DELEGATECALL` vs `CALLCODE` opcodes, `CREATE` vs `CREATE2` opcodes; Yul Assembly - - Unstructured proxies https://eips.ethereum.org/EIPS/eip-1967 - - C3 Linearization https://forum.openzeppelin.com/t/solidity-diamond-inheritance/2694) (Diamond inheritance and resolution) - - Uniswap deep dive - - Finished Secureum slot 2 and 3 -### `vac:sc::vac:maintainance/misc` - - Introduced Vac's own `foundry-template` for smart contract projects - - Goal is to have the same project structure across projects - - Github repository: https://github.com/vacp2p/foundry-template - ---- -## *vsu:Applied Cryptogarphy & ZK (ACZ)* - - `vac:acz:zerokit:vac:maintenance` - - PR reviews https://github.com/vacp2p/zerokit/pull/200, https://github.com/vacp2p/zerokit/pull/201 - ---- -## *vip::zkVM* -### `vac:zkvm::vac:research-existing-proof-systems` -- delivered Nescience WIP doc -- delivered FHE review -- delivered Nova vs Sangria done - Some discussions during the meeting -- started HyperNova writeup -- started writing a trimmed version of FHE writeup -- researched CCS (for HyperNova) -- Research Protogalaxy https://eprint.iacr.org/2023/1106 and Protostar https://eprint.iacr.org/2023/620. -### `vac:zkvm::vac:proof-system-benchmarks` -- More work on benchmarks is ongoing -- Putting down a document that explains the differences - ---- -## *vc::Deep Research* -### `vac:dr:valpriv:vac:tor-push-poc` -- revised the code for PR -### `vac:dr:valpriv:vac:tor-push-relwork` -- added section for mixnet, non-Tor/non-onion routing-based anonymity network -### `vac:dr:gsub-scaling:vac:gossipsub-simulation` -- Used shadow simulator to run first GossibSub simulation -### `vac:dr:gsub-scaling:vac:gossipsub-improvements-tech-report` -- Finalized 1st draft of the GossipSub scaling article \ No newline at end of file diff --git a/content/vac/updates/2023-08-21.md b/content/vac/updates/2023-08-21.md deleted file mode 100644 index 2fdd72661..000000000 --- a/content/vac/updates/2023-08-21.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -title: "2023-08-21 Vac weekly" -tags: - - "vac-updates" -date: 2023-08-21 -lastmod: 2023-08-21 -draft: false ---- - - -Vac Milestones: https://www.notion.so/Vac-Roadmap-907df7eeac464143b00c6f49a20bb632 -Vac Github Repos: https://www.notion.so/Vac-Repositories-75f7feb3861048f897f0fe95ead08b06 - -# **Vac week 34** August 21th -## *vsu::P2P* - - `vac:p2p:nim-libp2p:vac:maintenance` - - Test-plans for the perf protocol (99%: need to find why the executable doesn't work) https://github.com/libp2p/test-plans/pull/262 - - WebRTC: Merge all protocols (60%: slowed down by some complications and bad planning with Mbed-TLS) https://github.com/status-im/nim-webrtc/pull/3 - - WebRTC: DataChannel (25%) -## *vsu::Tokenomics* - - admin/misc: - - (3 CC days off) - - `vac:tke::codex:economic-analysis` - - Call w/ Codex on token incentives, business analysis of Filecoin - - `vac:tke::status:SNT-staking` - - Bug fixes for tests for the contracts - - `vac:tke::nomos:economic-analysis` - - Narrowed focus to: 1) quantifying bribery attacks, 2) assessing how to min risks and max privacy of delegated staking - - `vac:tke::waku:economic-analysis` - - Caught up w/ Waku team on RLN, adopting a proactive effort to pitch them solutions -## *vsu::Distributed Systems Testing (DST)* - - `vac:dst:wakurtosis:vac:rlog` - - Pushed second draft and figures (https://github.com/vacp2p/vac.dev/tree/DST-Wakurtosis) - - `vac:dst:shadow:vac:basic-shadow-simulation` - - Run 10K simulation of basic gossipsub node - - `vac:dst:gsub-model:status:control-messages` - - Got access to status superset - - `vac:dst:analysis:nomos:nomos-simulation-analysis` - - Basic CLI done, json to csv, can handle 10k nodes - - `vac:dst:wakurtosis:waku:topology-analysis` - - Collection + analysis: now supports all waku protocols, along with relay - - Cannot get gossip-sub peerage from waku or prometheus (working on getting info from gossipsub layer) - - `vac:dst:wakurtosis:waku:techreport_02` - - Merged 4 pending PRs; master now supports regular graphs - - `vac:dst:eng:vac:bundle-simulation-data` - - Run 1 and 10 rate simulations. 100 still being run - - `vac:dst:10ksim:vac:10ksim-bandwidth-test` - - Working on split the structure of codex tool; Working on diagrams also -## *vsu:Smart Contracts (SC)* - - `vac:sc::status:community-contracts-ERC721` - - delivered (will need maintenance and adding features as requested in the future) - - `vac:sc::status:community-contracts-ERC20` - - started working on ERC20 contracts - - `vac:sc::vac:secureum-upskilling` - - Secureum: Finished Epoch 0, Slot 4 and 5 - - Deep dive on First Depositor/Inflation attacks - - Learned about Minimal Proxy Contract pattern - - More Uniswap V2 protocol reading - - `vac:sc::vac:maintainance/misc` - - Worked on moving community dapp contracts to new foundry-template -## *vsu:Applied Cryptogarphy & ZK (ACZ)* - - `vac:acz:rlnp2p:waku:rln-relay-enhancments` - - rpc handler for waku rln relay - https://github.com/waku-org/nwaku/pull/1852 - - fixed ganache's change in method to manage subprocesses, fixed timeouts related to it - https://github.com/waku-org/nwaku/pull/1913 - - should error out on rln-relay mount failure - https://github.com/waku-org/nwaku/pull/1904 - - fixed invalid start index being used in rln-relay - https://github.com/waku-org/nwaku/pull/1915 - - constrain the values that can be used as idCommitments in the rln-contract - https://github.com/vacp2p/rln-contract/pull/26 - - assist with waku-simulator testing - - remove registration capabilities from nwaku, it should be done out of band - https://github.com/waku-org/nwaku/pull/1916 - - add `deployedBlockNumber` to the rln-contract for ease of fetching events from the client - https://github.com/vacp2p/rln-contract/pull/27 - - `vac:acz:zerokit:vac:maintenance` - - exposed `seq_atomic_operation` ffi api to allow users to make use of the current index without making multiple ffi calls - https://github.com/vacp2p/zerokit/pull/206 - - use pmtree instead of vacp2p_pmtree now that changes have been upstreamed - https://github.com/vacp2p/zerokit/pull/203 - - Prepared a PR to fix a stopgap introduces by PR 201 https://github.com/vacp2p/zerokit/pull/207 - - PR review https://github.com/vacp2p/zerokit/pull/202, https://github.com/vacp2p/zerokit/pull/206 - - `vac:acz:zerokit:vac:zerokit-v0.4` - - substitute id_commitments for rate_commitments and update tests in rln-v2 - https://github.com/vacp2p/zerokit/pull/205 - - rln-v2 working branch - https://github.com/vacp2p/zerokit/pull/204 - - misc research while ooo: - - stealth commitment scheme inspired by erc-5564 - https://github.com/rymnc/erc-5564-bn254, associated circuit - https://github.com/rymnc/circom-rln-erc5564 (very heavy on the constraints) -## *vip::zkVM* -- `vac:zkvm::vac:research-existing-proof-systems` - - Updated the Nova questions document (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451 -> Projects -> Nova_Research_Answers.pdf) - - Researched ProtoStar and Nova aleternatives -- `vac:zkvm::vac:proof-system-benchmarks` - - Drafted the Nova Benchamarks document (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451 -> Projects -> Benchmarks.pdf) - - Researched hash functions - - Researched benchmarks -## *vc::Deep Research* - - `vac:dr:valpriv:vac:tor-push-poc` - - Reimplemented torpush without any gossip sharing - - Added discovering peers for torpush in every epoch/10 minutes - - torswitch directly pushes messages to separately identified peers - - `vac:dr:valpriv:vac:tor-push-relwork` - - added quantified measures related to privacy in the paper section - - `vac:dr:gsub-scaling:vac:gossipsub-improvements-tech-report` - - Explored different unstructured p2p application architectuture - - Studied literature on better bandwidth utilization in unstructured p2p networks. - - `vac:dr:gsub-scaling:vac:gossipsub-simulation` - - Worked on GossibSup simulation in shadow simulator. Tried understanding different libp2p functions - - Created short awk scripts for analyzing results. - - `vac:dr:consensus:nomos:carnot-bribery-article` - - Continue work on the article on bribery attacks, PoS and Carnot - - Completed presentation about the bribery attacks and Carnot - - `vac:dr:consensus:nomos:carnot-paper` - - Discussed Carnot tests and results with Nomos team. Some adjustment to the parameters needed to be made to accurate results. \ No newline at end of file diff --git a/content/vac/updates/2023-08-28.md b/content/vac/updates/2023-08-28.md deleted file mode 100644 index 543d39a86..000000000 --- a/content/vac/updates/2023-08-28.md +++ /dev/null @@ -1,131 +0,0 @@ ---- -title: "2023-08-28 Vac weekly" -tags: - - "vac-updates" -date: 2023-08-28 -lastmod: 2023-08-28 -draft: false ---- - -## Vac week 35 - -* Vac Milestones: https://www.notion.so/Vac-Roadmap-907df7eeac464143b00c6f49a20bb632 -* Vac Github Repos: https://www.notion.so/Vac-Repositories-75f7feb3861048f897f0fe95ead08b06 - -### vsu::P2P - -- `vac:p2p:nim-libp2p:vac:maintenance` - - Becaming a Validator in the Nimbus Consensus client (95%) - - IWANT replies can be bigger than the pubsub message limit (100%, on review) https://github.com/status-im/nim-libp2p/issues/887 - - Improve gossipsub DDoS resistance (98%) https://github.com/status-im/nim-libp2p/pull/920 - -### vsu::Tokenomics - -- admin/misc: -- `vac:tke::codex:economic-analysis` - - Timeline of Filecoin vs competitors, IPFS vs Filecoin usage, Filip: miners perspective -- `vac:tke::status:SNT-staking` - - Further debugging, verify Multiplier Points calculation (especially gas fee optimization, how GMX implements) -- `vac:tke::nomos:economic-analysis` - - Book seperate calls w/ Moh and Marcin to discuss helping them w/ their relative points of focus -- `vac:tke::waku:economic-analysis` - - Call w/ Aaryamann on RLN, condense our thoughts to a "proposal" for Waku - -### vsu::Distributed Systems Testing (DST) - - - `vac:dst:analysis:nomos:nomos-simulation-analysis` - - Analysis done, scales to million nodes - - Exploratory sets of runs done - - Decided on the parameter set for the final runs - - `vac:dst:software-testing:waku:test-plans` - - get familiar with specs for some of the Waku protocols - - `vac:dst:software-testing:waku:test-automation-js-waku` - - Setup local env - - Investigated how the existing tests are running and how the code is structured - - `admin/misc`: - - 2 CCs ooo - -### vsu:Smart Contracts (SC) - -- `vac:sc::vac:secureum-upskilling` - - Finished Secureum Slot 6 - - Read a bit into Upgradable contract patterns -- `vac:sc::status:community-contracts-maintenance` - - Moved `communities-contracts` repo to our Foundry template https://github.com/status-im/communities-contracts/pull/1 - - Also implemented additional tests -- `vac:sc::vac:maintainance/misc` - - Finished up moving `community-dapp/contracts` to foundry template -- `vac:sc::status:community-contracts-deployer` - - Brainstormed and discussed desired deployer contract with desktop team; Discussion: https://github.com/status-im/status-desktop/issues/11954#issuecomment-1694591812 - - updating ERC2470 https://eips.ethereum.org/EIPS/eip-2470 -- `vac:sc::status:snt-staking-contract-maintenance` - - discussing issue with order of processAccount giving advantages on first callers - -### vsu:Applied Cryptogarphy & ZK (ACZ) - -- `vac:acz:rlnp2p:waku:membership-management` - - Wrote a tool `rln_keystore_generator` : https://github.com/waku-org/nwaku/pull/1925, https://github.com/waku-org/nwaku/pull/1928, https://github.com/waku-org/nwaku/pull/1931 -- `vac:acz:rlnp2p:waku:rln-relay-enhancments` - - tree metadata should include chainId and contractAddress - https://github.com/waku-org/nwaku/pull/1932 - - set flush_interval appropriately -https://github.com/waku-org/nwaku/pull/1933 - - integrate new WakuRlnRegistry contract - https://github.com/waku-org/nwaku/pull/1943 - - bump zerokit to v0.3.2 https://github.com/waku-org/nwaku/pull/1951 - - tree metadata should include window of roots - https://github.com/waku-org/nwaku/pull/1953 - - sync tree state from contract deployed block number - https://github.com/waku-org/nwaku/pull/1955 - - optimization to waku_keystore - https://github.com/waku-org/nwaku/pull/1956 - - fixed a `forceProgression` bug in the WakuRlnRegistry contract - https://github.com/waku-org/waku-rln-contract/pull/6 -- `vac:acz:zerokit:vac:maintenance` - - prevent tree db from being recreated if it exists - https://github.com/vacp2p/zerokit/pull/209 - - released zerokit v0.3.2 - https://github.com/vacp2p/zerokit/releases/tag/v0.3.2 - - merged PR to fix a stopgap introduced by PR 201 https://github.com/vacp2p/zerokit/pull/207 -- `vac:acz:zerokit:vac:zerokit-v0.4` - - Prepared a PR to deal with `message_id` range check https://github.com/vacp2p/zerokit/pull/210 - - Researched needed changes to `rln-cli` - -### vip::zkVM - -- `vac:zkvm::vac:research-existing-proof-systems` - - 40% update of the blog is done, working on finding smoother ways to explain findings and alternatives (focusing on a blog structure rather than a document) -- `vac:zkvm::vac:proof-system-benchmarks` - - Added a summary table for different performances -- `vac:zkvm::vac:research-existing-proof-systems` - - Finished Plonky2 research document https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#01301b98f3af4157b932112ed998cff2 - - Write notes on Protostar -- `vac:zkvm::vac:proof-system-benchmarks` - - minor fixes plonky2 PR https://github.com/vacp2p/zk-explorations/pull/5 - - README's to make zk-explorations repo public https://github.com/vacp2p/zk-explorations/pull/4 - - merged and closed needed PRs for zk-explorations repo - - work on Halo2 benchmark - -### vc::Deep Research - -- `vac:dr:valpriv:vac:tor-push-poc` - - dev: fixed bugs related to initialization, changed to building async tor connections, adding direct peers, triaging/debugging issues https://github.com/vacp2p/nimbus-eth2-experimental/pull/2/commits/431a76014b3f584573329993b167fe1118eca6b3 - - test: readied setup o beacon node(s) with validator keys, test attestation transmission over tor. Planning for measuring delays -- `vac:dr:valpriv:vac:tor-push-relwork` - - solution section refined with several updates including adding a figure for the Tor-push method. - - dedicated section on "Theoretical Analysis" - - four different possible scenarios for the attacker to break the anonymity of the Tor network -- `vac:dr:gsub-scaling:vac:gossipsub-improvements-tech-report` - - Literature study related to scalability, overlay design, efficient message propagation in unstructured p2p networks - - Started writing a survey report on efficient broadcast in large scale p2p networks. -- `vac:dr:gsub-scaling:vac:gossipsub-simulation` - - Executed different gossipsub simulations in shadow simulator - - can now collect different metrics like packet delivery ratio, data overhead, control overhead, network bandwidth utilization, average latency & standard deviations -- `vac:dr:consensus:nomos:carnot-bribery-article` - - Continue work on the article on bribery attacks, PoS and Carnot. Different examples including one based on game theory were presented to show that bribery attacks are economic attacks and cannot be addressed alone in the consensus layer. Economy based solutions have to be considered at the PoS layer. -- `vac:dr:consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Begin work on Carnot variant that aggregates the majority of votes. - - Designing the algorithm. -- `vac:dr:consensus:nomos:carnot-paper` - - Analyzing and discussing Carnot tests. There were variance in the latency results. We think it is due to the geographical distribution of nodes. Hence, Gusto was asked to use a single geographic zone to acheive a smooth curve while verifying that the variance is due to the latency cause by geographical distribution of nodes. - -### vc::RFC - -- `vac:rfc:rfc:status:port-status-specs` - - Updated RFC spec for Community History Archive protocol according to PR feedback - - https://github.com/vacp2p/rfc/pull/610 - - This has been reviewed more and those additional comments need to be addressed as well -- Started porting `/spec/6/PAYLOADS` to Vac - - diff --git a/content/vac/updates/2023-09-04.md b/content/vac/updates/2023-09-04.md deleted file mode 100644 index 9b0a27678..000000000 --- a/content/vac/updates/2023-09-04.md +++ /dev/null @@ -1,139 +0,0 @@ ---- -title: "2023-09-04 Vac weekly" -tags: - - "vac-updates" -date: 2023-09-04 -lastmod: 2023-09-04 -draft: false ---- - -## Vac 2023/09/04 - -* [Vac Milestones](https://www.notion.so/Vac-Roadmap-907df7eeac464143b00c6f49a20bb632) -* [Vac Github Repos](https://www.notion.so/Vac-Repositories-75f7feb3861048f897f0fe95ead08b06) - -### vac:p2p: - -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - Opened upstream discussion about gossipsub peer exchange (which is a DDoS vector) https://github.com/libp2p/specs/issues/570 -- `nimlibp2p:vac:webrtc-transport` - - Hitting roadblocks on DTLS - -### vac:tke:: - -- `codex:economic-analysis` - - Presenting Filecoin findings to Codex team - - Litepaper: assumptions on collateral -- `status:SNT-staking` - - Highlighted multiple design requirements not met by SC implementation for SC team [notion doc](https://www.notion.so/Implementing-SNT-Staking-Contract-Issues-Differences-2de74e7c19124e78b1c9490300a84422) - - Open questions w/ John, epoch duration - - Staking governance proposal for when John returns Sep 12 -- `nomos:economic-analysis` - - Delegated staking specifications w/Marcin, update for privacy constraints - - Bribery attacks analysis, Moh asked to followup early/mid Sep -- `waku:economic-analysis` - - Formalized RLN thoughts shared w/ Aaryamann, will push for additional feedback once Martin returns - -### vac:dst: - -- `analysis:nomos:nomos-simulation-analysis` - - Took over data generation on Tuesday - - Found a bug in simulations, working around it - - The comparison runs are now fully automated - - got the first full set of comparison plots: everything appears to be explainable for a fixed probability - - Tree runs now scale to 15k nodes -- `wakurtosis:vac:retrospective-rlog` - - Gather info and wrote summary of why we decided to stop using Kurtosis. -- `10ksim:vac:10ksim-bandwidth-test` - - Code diagrams + structurization - - Chats with Ben (Codex) -- `wakurtosis:nomos:ci-integration_02` - - (hold for now, since we drop Kurtosis; will continue in November once we have the new 10k simulator tool) -- `software-testing:waku:test-plans` - - Added test plans for filter, lightpush and store: https://www.notion.so/Test-Plans-09c8c7b7f6784c459fb774792665e37c -- `software-testing:waku:test-automation-js-waku` - - Made it possible to choose the nwaku version in the js waku github actions workflow by using workflow_dispatch inputs. [PR Link](https://github.com/waku-org/js-waku/pull/1510) - -### vac:sc:: - -- `vac:secureum-upskilling` - - No progress; busy with `CommunityTokenDeployer` contract -- `status:community-contracts-maintenance` - - Gas optimizations in token contracts - - Custom errors vs require string messages [PR](https://github.com/status-im/communities-contracts/pull/3) - - Usage of `immutable` properties [PR](https://github.com/status-im/communities-contracts/pull/5) -- `status:community-contracts-deployer` - - Implemented `CommunityTokenDeployer` - - Includes tests and docs - - [Pull requests](https://github.com/status-im/communities-contracts/pull/2) - - Ran into a contract size issue; Context [comment](https://github.com/status-im/communities-contracts/pull/2#issuecomment-1705063304) - - Added docs for commuity token deployer contract - - [Pull Request](https://github.com/status-im/communities-contracts/pull/4) -- `status:governance-contract-mvp` - - ERC2470 ressurection - - Updated to latest solidity - - Implemented error checking for "already deployed" (saves gas in case of user error) - - Implemented error checking for "successful deploy" (forces gas estimation to successful deploy scenario) - - In progress upgrade on solidity compiler new outputs (from 0.5.11=>0.8.x) - - Research on delegation vs staking contract - -### vac:acz: - -- `rlnp2p:waku:membership-management` - - fixed makefile target for `rln-keystore-generator` - https://github.com/waku-org/nwaku/pull/1960 - - log the membership index out upon registration in the `rln-keystore-generator` - https://github.com/waku-org/nwaku/pull/1963 -- `rlnp2p:waku:rln-relay-enhancments` - - rln was enabled by default in the Makefile - fixed - https://github.com/waku-org/nwaku/pull/1964 - - ordered pubsub validator execution - https://github.com/waku-org/nwaku/pull/1966 - - fixed deserialization of valid merkle roots - https://github.com/waku-org/nwaku/pull/1973 - - confirm that the fetched credential from the keystore is registered to the membership set - https://github.com/waku-org/nwaku/pull/1980 - - fixed makefile target for zerokit's `librln.a` - https://github.com/waku-org/nwaku/pull/1981 - - converted zero-based indexing to 1-based indexing on vacp2p/rln-contract - https://github.com/vacp2p/rln-contract/pull/28 - - downstreamed zero-based indexing to waku-org/waku-rln-contract - https://github.com/waku-org/waku-rln-contract/pull/8 - - - deployed new version of the registry contract on sepolia - `0xc04937d502E0ae671cedFC2A0BCD6692055520f3` -- `zerokit:vac:zerokit-v0.4` - - Merged a PR to deal with `message_id` range check https://github.com/vacp2p/zerokit/pull/210 - - researched `tree_size` issue for the 0.4 release - - researched `idCommitment/rateCommitment` issue for the 0.4 release - -### vac:zkvm: - -- `proofsystems:vac:research-existing-proof-systems` - - [blog post] (https://vac.dev/rlog/Nescience-A-zkVM-leveraging-hiding-properties) - - Researched ways to achieve Goal2 and Goal3 for Nescience. - - Integrated different techniques for Goal4 and Goal5 for Nescience. - - prepared Nova-implementation writeup (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#cce2cc365a384126b2a5041900bd3ce9) - - Continued Lasso research (https://a16zcrypto.com/posts/article/introducing-lasso-and-jolt/) - - [Notes for Protogalaxy; 100%](https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#31b80e44529e4f3c80991e4a67afed3c) - - Notes for Protostar -- `proofsystems:vac:proof-system-benchmarks` - - Added an introductory section for Benchmark in zk-explorations repo: https://github.com/vacp2p/zk-explorations/pull/10 - -### vac:dr: - -- `gsub-scaling:vac:unstructured-p2p-improvements-survey` - - Completed literature study. Covered article related to overlay design (single tier, multi-tier, hybrid overlays) - - peer selection methodologies, rumor/gossiping protocols, push/pull based publishing approaches, message encoding, probablistic forwarding, overlay optimization, and peer heterogeneity/capacity based roles (super nodes and similar roles) - - Still need to review 1-2 D-regular graph based approaches. Only selected articles are added in zotero (under vacp2p) -- `valpriv:vac:tor-push-poc` - - Debugged various appraoches(tcp, gossip, tor). Triaged why attestations not working -- `valpriv:vac:tor-push-relwork` - - completed related work all -- `consensus:nomos:carnot-paper` - - Publishing the Carnot paper (Done) https://arxiv.org/pdf/2308.16016.pdf - - Begin work on writing up Carnot's specification in RFC format -- `consensus:nomos:carnot-bribery-article` - - Finishing (describing research directions and their pros and cons, polishing the article) and publishing the article (Done) https://www.notion.so/WIP-Bribery-Attacks-in-Consensus-Protocols-Challenges-and-Solutions-e4e108c17dba421abe83de49076c8f25 -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Completing the initial design and work on presentation slides. The plan will be to present the initial design on September 6 research call - -### vac:rfc:rfc: - -- `status:port-status-specs` - - Started porting `6/PAYLOAD` to vac RFCs - - Work-in-progress PR is pending [here](https://github.com/vacp2p/rfc/pull/612) - - This RFC specifically needs a lot of work as it misses a lot of the current payload types - - Updated `61/STATUS-community-history-archives` according to feedback comments and landed it - - Merged PR is [here](https://github.com/vacp2p/rfc/pull/610) - - started porting 16/keycard-usage to Vac (looking into status-go) - diff --git a/content/vac/updates/2023-09-11.md b/content/vac/updates/2023-09-11.md deleted file mode 100644 index 7ce773184..000000000 --- a/content/vac/updates/2023-09-11.md +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: "2023-09-11 Vac weekly" -tags: - - "vac-updates" -date: 2023-09-11 -lastmod: 2023-09-11 -draft: false ---- - -### vac:p2p: -- `nim-libp2p:vac:maintenance`: - - [IWANT splitting](https://github.com/status-im/nim-libp2p/pull/944) now ready for review -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - [Traffic scoring](https://github.com/status-im/nim-libp2p/pull/920) now ready for review - - Pursuing [upstream discussions](https://github.com/libp2p/specs/issues/570) about gossipsub Peer Exchange -- `nim-chronos:vac:maintenance`: - - Continued https://github.com/status-im/nim-chronos/pull/418 - -### vac:tke: -- `vac:tke::status:SNT-staking` - - Write first draft of staking governance proposal - - standby to hear SC team questions -- `vac:tke::nomos:economic-analysis` - - Analysis of rewards for delegation vs validation - -### vac:dst: -- `wakurtosis:vac:rlog` - - Address PR feedback (https://github.com/vacp2p/vac.dev/pull/123) -- `wakurtosis:waku:techreport_03` - - batch of simulation data with 0 msg/s rate. -- `wakurtosis:vac:retrospective-rlog` - - Started draft/planning of document -- `eng-10ktool:vac:bandwidth-test` - - Working on adding an intermediate layer between services (Codex) and framework. -- `wakurtosis:waku:techreport_02` -- `software-testing:waku:test-plans` - - Minor tweaks/updates on the filter test plan -- `software-testing:waku:test-automation-js-waku` - - Created draft PR with ~60 new tests + refactoring for Filter protocol (https://github.com/waku-org/js-waku/pull/1552) - - Worked with Vaclav to run js-waku tests automatically in the nwaku CI. - - Tests will run against the nwaku node built for the PR that triggers the CI + jswaku from master (nwaku PR: https://github.com/waku-org/nwaku/pull/2006) (js-waku PR: https://github.com/waku-org/js-waku/pull/1541) -- `software-testing:waku:test-automation-nwaku` - - Get acquainted with codebase, tests, rfcs, and nim. - - start implementing first set of tests (`Filter/SUBSCRIBER_PING`). -- `vac:dst:analysis:nomos:nomos-simulation-analysis` - - Done first set of runs for different probabilities; a run takes 2+ days - - The tree simulation now scales to 30k nodes! - - Branch runs are now fully automated -- `vac:dst:wakurtosis:waku:topology-analysis` - - tried json RPC under shadow (worked as expected); the RPC appears a bit faster compared to wakurtosis - - Waku network collection PR done : https://github.com/vacp2p/wakurtosis/pull/143 - -### vac:acz: -* `rlnp2p:waku:rln-relay-enhancments` - - if only one key exists in the keystore, use it - https://github.com/waku-org/nwaku/pull/1984 - - fix log levels for some logs - https://github.com/waku-org/nwaku/pull/1986 - - updated documentation for rln-relay - https://github.com/waku-org/nwaku/pull/1993 - - clean nullifier table every `MaxEpochGap` - https://github.com/waku-org/nwaku/pull/1994 - - created `rln_db_inspector` tool, allows inspection into merkle tree structure - https://github.com/waku-org/nwaku/pull/1999, https://github.com/waku-org/nwaku/pull/2012 - - fixed missing memberships between history sync and new memberships sync with @alrevuelta - https://github.com/waku-org/nwaku/pull/2015 - - remove `rln` from waku's experimental features - https://github.com/waku-org/nwaku/pull/2001 - - fix metric calculation for registered members - https://github.com/waku-org/nwaku/pull/2018 - - uups proxy for waku-rln-registry - https://github.com/waku-org/waku-rln-contract/pull/9 -* `zerokit:vac:zerokit-v0.4` - - fetched artifacts from trusted setup completion, generated verfication keys and circuit's wasm files - - for some reason, the proof verification always results in `false`, needs further investigation. working branch - https://github.com/vacp2p/zerokit/pull/211 - - Created and merged a PR to fix test failings https://github.com/vacp2p/zerokit/pull/212 - - Reaserched test failures with new artifacts - -### vac:sc: -- `status:snt-staking-contract-maintenance` - - Prepared a pull request that migrates the code base to our foundry template: [Pull Request #6](https://github.com/logos-co/staking/pull/6) -- `status:community-contracts-deployer` - - Refactored `CommunityTokenDeployer` contract to make use of token factory contracts: [Pull Request #2](https://github.com/status-im/communities-contracts/pull/2) - - Updated documentation and visuals according to code changes: [Pull Request #4](https://github.com/status-im/communities-contracts/pull/4) -- `vac:maintainance/misc` - - Added support for codecoverage analysis in our foundry template: PR: https://github.com/vacp2p/foundry-template/pull/6 - - Added basic deployment config to our template: PR: https://github.com/vacp2p/foundry-template/pull/5 - - Added slither support: PR: https://github.com/vacp2p/foundry-template/pull/4 - - added a new resource to the Smart Contract notion section about gas optimizations - -### vac:zkvm: -* `proofsystems:vac:research-existing-proof-systems` - - Addressed some questions regarding Nescience. - - Worked on compressing informations in Nescience for a future publication. - - Continued research on Jolt - - Continued writing a paper on Lasso (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#025f586e7e4c46818a0e0a1ab9a79c20) - - Attended webinars for Open Talk: Zero Knowledge [(recorded talks)](https://www.youtube.com/watch?v=cgw18zbTUHA) - - Update [Halo2 notes](https://file.notion.so/f/f/1518abd9-c08f-4989-93c1-96525e62bce5/ae9b5bf8-f5ff-4436-bc7b-e3f7eccf030c/Notes___Halo2.pdf?id=406e5fef-e565-4625-bbc4-e5242354f5f7&table=block&spaceId=1518abd9-c08f-4989-93c1-96525e62bce5&expirationTimestamp=1694563200000&signature=7AD-ydeIweC9m2w6yxgKHFatWVI_2mvuSupIDaCPH64&downloadName=Notes+-+Halo2+%28WIP%29.pdf) -* `proofsystems:vac:benchmarks` - - Published a complete section on Github regarding Benchmarks (https://github.com/vacp2p/zk-explorations/blob/main/benchmarks.md). - - work on [Halo2 benchmark implementation](https://github.com/vacp2p/zk-explorations/tree/origin/halo2-bench) - - Nova Circom: done, Nova-Scotia: there is a part left - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Completed the tor based gossipsub instance broadcas; the first working POC. Overcame, triaged several issues https://github.com/vacp2p/nimbus-eth2-experimental/issues/1 - - [first running tor-push nimbus validator](https://goerli.beaconcha.in/validator/86f53cc0e56ae0c6fbe3113a290a52a76cf056339d91f9e166ddbf15a35373d3c455cc387c8ab70db7b3d024113e394d) -- `valpriv:vac:tor-push-paper` - - changes to introduction, solution section, removed not in scope papers -- `gsub-scaling:vac:gossipsub-simulation` - - Worked on adding staggered sending suppoort in Gossipsub (still working on it) - - Formalized and improved simulation scripts for GossipSub behavior against large messages. -- `consensus:nomos:carnot-paper` - - Work on writing up Carnot's specification in RFC format (https://github.com/logos-co/nomos-specs/blob/RFC/carnot/spec.md) -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Work on presentation slides for Sep. 6 research call. (slides can be found at: https://www.notion.so/Roadmap-Deep-Research-DR-561a864c890549c3861bf52ab979d7ab?pvs=4#d1d3033792b443f39e47955721f9db52) - - Begin to write down the high level protocol.(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) - -### vc::rfc: -* `status:port-status-specs` - - Kicked off discussion with "stakeholders" about `6/PAYLOAD` spec and how it should be ported/maintained - - started porting parts of `6/PAYLOAD` - - Ported 16/keycard-usage to 63/status-keycard-usage - https://github.com/vacp2p/rfc/pull/615 - diff --git a/content/vac/updates/2023-09-18.md b/content/vac/updates/2023-09-18.md deleted file mode 100644 index 34db528c3..000000000 --- a/content/vac/updates/2023-09-18.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: "2023-09-18 Vac weekly" -tags: - - "vac-updates" -date: 2023-09-18 -lastmod: 2023-09-18 -draft: false ---- - -### vac:p2p: -- `nim-libp2p:vac:maintenance`: - - [Fixed](https://github.com/status-im/nimbus-eth2/pull/5427) gossipsub Direct Peers - - Continued cross-libp2p [perf implementation](https://github.com/libp2p/test-plans/pull/262) -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - Open eth specs [issue](https://github.com/ethereum/consensus-specs/issues/3500) about disabling gossipsub Peer Exchange -- `nimlibp2p:vac:webrtc-transport` - - Fixed the blocking DTLS issue, continuing vertical implementation - -### vac:tke: -- `vac:tke::codex:economic-analysis` - - Review litepaper feedback w/ Codex and identify steps to finalize Codex tokenomics -- `vac:tke::status:SNT-staking` - - Review staking governance proposal w/John in Status call -- `vac:tke::nomos:economic-analysis` - - Analysis of rewards for delegation vs validation - - Researching ETH 2.0 emission decision rationales - -### vac:dst: -- `wakurtosis:waku:techreport_03` & `wakurtosis:vac:rlog` - - Analysis of the non-load simulations (0msgs to isolate discv5 effects) - - Recaculated efficiencies taking into account message counts instead of expectation - - Generated new efficiency plots; Re-written discussion to account for the latter -- `eng-10ktool:vac:bandwidth-test` - - Created new repo for Python tool (https://github.com/vacp2p/10ksim) - - Kubernetes configuration and documentation (https://github.com/vacp2p/10ksim/issues/1) -- `software-testing:waku:test-automation-js-waku` - - Addressed comments and merged the Filter protocol tests PR (https://github.com/waku-org/js-waku/pull/1552) - - Created new PR with ~40 new lightpush tests (https://github.com/waku-org/js-waku/pull/1571) - - Extract the testing parts of js-waku CI into reusable workflows that can be easily called cross-repo (https://github.com/waku-org/js-waku/pull/1566) - - Improved the retry-on-fail mechanism of the js-waku tests (https://github.com/waku-org/js-waku/pull/1573) -- `software-testing:waku:test-automation-nwaku` - - Finished implementing waku filter ping tests; [PR](https://github.com/waku-org/nwaku/pull/2023) - - Implemented waku filter subscribe tests; Found first two wrong/unclear behaviours due to tests; [PR 1](https://github.com/waku-org/nwaku/pull/2034); [PR 2](https://github.com/waku-org/nwaku/pull/2035) - - Checking existing tests and removing legacy/duplicated. - - Began implementing waku filter client error tests - -### vac:acz: -- `zerokit:vac:zerokit-v0.4` - - Prepared a PR to fix `test_recover_id_secret` test due to incorrect serialization https://github.com/vacp2p/zerokit/pull/217 - - Fixed serialization in other tests -- `secure-channels:waku:ethereum-chat` - - Getting familiar with some of the protocols, namely: X3DH, Double Ratchet, XEdDSA and Noise. - - Start defining the requirements of the secure chat protocol. -- `rlnp2p:waku:rln-relay-enhancments` - - updated submodule, fixed metric - https://github.com/waku-org/nwaku/pull/2024 -- `rlnp2p:waku:rln-doc-and-outreach` - - updated nwaku pre-requisites docs for rln - https://github.com/waku-org/docs.waku.org/pull/115 -- `zerokit:vac:maintenance` - - exposed leaves_set api to count the number of insertions into the tree - https://github.com/vacp2p/zerokit/pull/213 - - optimized the batch insert to reduce insertion times - https://github.com/vacp2p/zerokit/pull/215 -- `zerokit:vac:zerokit-v0.4` - - still continuing to investigate proof verification failures. headway made, the root that the proof has is != the tree root produced by zerokit. - -### vac:sc:: -- `status:SNT-optimism-bridge` - - Workin on porting legacy MiniMe token to our foundry template - - Also update its code and tests; Ultimately this becomes a dependency of other projects (staking, governance etc) - - [Updated to solidity 0.8.19](https://github.com/vacp2p/minime/pull/1) - - [Fixed linting 1](https://github.com/vacp2p/minime/pull/10) , [2](https://github.com/vacp2p/minime/pull/12) - - [Upgraded error-strings to error-codes](https://github.com/vacp2p/minime/pull/13) - - Started fixing auditor errors: [variables->immutables](https://github.com/vacp2p/minime/pull/23), [uint128 castings](https://github.com/vacp2p/minime/pull/22), [check-effects-interactions](https://github.com/vacp2p/minime/pull/24) - - other minor improvements ([erc20](https://github.com/vacp2p/minime/pull/14), [separate contracts](https://github.com/vacp2p/minime/pull/16)) -- `vac:misc`: - - Visited blockchain week in Berlin - -### vac:zkvm: -- `proofsystems:vac:research-existing-proof-systems` - - Worked on the motivation of Goal 1: Why separate state is more beneficial (Document next week) - - Started a somehow scientific article format for Nescience - - Finished a writeup on Lasso https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#e563de6778b04479a7936e2c5664c9ec - - Started writing a writeup on Jolt - - Update Logos slides for presentation on 9/20. (link pending) - - Begin research [recproof](https://uploads-ssl.webflow.com/6460ebf2b6ff254688bebf1c/64e4dd54d9198fde8d58ef44_main.pdf) -- `proofsystems:vac:benchmarks` - - Finished Nova benchmark that uses Nova-Scotia https://github.com/vacp2p/zk-explorations/pull/13 - - Started working on Nova benchmark that uses bellman (original/default way to do things in Nova) - - Worked on [Halo2 benchmarks](https://github.com/vacp2p/zk-explorations/pull/11) - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Extraced latency of attestations sent from gossip_sub debug level logs - - Collected around 150 or more latencies of attestations, both for normal and tor switch - - Validated tor-circuit formation on validator machine -- `valpriv:vac:tor-push-paper` - - Revised the structure of paper, added mathematical definition -- `gsub-scaling:vac:unstructured-p2p-improvements-survey` - - The first draft of survey is ready for review -- `gossipsub-improvements-paper` - - Incorporated changes to the first draft of the improvement paper. Still a work in process. --`consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Writing the psuedocode (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Added discussion and committee merging algorithm to the high level protocol document(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) - -### vac:rfc: -- `status:port-status-specs` - - continued discussion of the `PAYLOAD` RFC; continue working on updating the RFC - diff --git a/content/vac/updates/2023-09-25.md b/content/vac/updates/2023-09-25.md deleted file mode 100644 index 10b776ae4..000000000 --- a/content/vac/updates/2023-09-25.md +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: "2023-09-25 Vac weekly" -tags: - - "vac-updates" -date: 2023-09-25 -lastmod: 2023-09-25 -draft: false ---- - -### vac:p2p: -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - Merged GossipSub Traffic Scoring https://github.com/status-im/nim-libp2p/pull/920 -- `nimlibp2p:vac:gossipsub-stagger-send` - - Continued simulations -- `nim-libp2p:vac:maintenance` - - Tried to integrate HP in nwaku, but rendezvous isn't integrated [yet](https://github.com/waku-org/nwaku/pull/1766#issuecomment-1731030691) -- `nimlibp2p:vac:webrtc-transport` - - Continued vertical integration of protocols - -### vac:tke: -- `vac:tke::codex:economic-analysis` - - Meeting with Codex on Tuesday, get in sync on timeline and steps for final delivery -- `vac:tke::status:SNT-staking` - - Review goverance process itself, governance proposal template, staking gov proposal w/ John -- `vac:tke::nomos:economic-analysis` - - Analysis of rewards for delegation vs validation - - Alvaro shared further docs to review on Private Addressing incentives and two-tiered staking -- `vac:tke::waku:economic-analysis` - - Reading WAKU papers and onboarding Sergei, establishing recurring cadence - -### vac:dst: -- `wakurtosis:waku:techreport_03` - - Delivered (pending discussion with Waku team) -- `analysis-shadow:vac:shadow-gossipsub-analysis` - - Run 20K simulation (resources test) -- `eng-10ktool:vac:bandwidth-test` - - Check with Slava K8s configuration, to run nodes in master aswell (K3s) - - Code first multi-node deployment - - Dockerized DST node -- `software-testing:waku:test-plans` - - Started working at the Relay test plan -- `software-testing:waku:test-automation-js-waku` - - Addressed all comments from last week PRs and merged them - - Fixed the nwaku CI part that invokes js-waku: https://github.com/waku-org/nwaku/pull/2061 - - Bumped nwaku version in js-waku CI: https://github.com/waku-org/js-waku/pull/1591 - - Helped investigating nwaku issues caught by the js-waku tests - - Investigated some flaky tests and tried to fix them: https://github.com/waku-org/js-waku/pull/1592 - - Started working on adding new tests for the static sharding functionality for js-waku - - Added a bug report found during testing and a feature request for test reporting -- `software-testing:waku:test-automation-nwaku` - - Implement service to service waku filter tests: [PR](https://github.com/waku-org/nwaku/pull/2057) - - Implement coverage for nwaku: [PR](https://github.com/waku-org/nwaku/pull/2067) - - Rebase all test branches from master, fixing numerous git mishaps. - - Update PRs with comments. - -### vac:acz: -- `rlnp2p:waku:rln-relay-enhancments` - - fixed a segfault issue - https://github.com/waku-org/nwaku/pull/2047 -- `zerokit:vac:zerokit-v0.4` - - still investigating the proof verification failures using the new artifacts. can confirm that the inputs for proof generation are valid, and are verified by using snarkjs. -- Removed private `message_id` from `compute_id_secret` agruments - - Fix `RLNProofValues` -- `secure-channels:waku:ethereum-chat` - - WiP Notion doc on the specifications of the protocol - -### vac:sc:: -- `status:community-contracts-deployer` - - Merged all pending PRs. This milestone is now done - - Deployed a version of token deployer contracts to optimism goerli -- `status:community-curation-contracts` - - Discussed and started implementing necessary changes for beta release - - Foundry deployment script - - batch processing of votes in finalization phase -- `status:SNT-optimism-bridge` - - Sync call with Certora on audit report and next audit planning - - created tests for onTransfer reentrancy case https://github.com/vacp2p/minime/pull/29 - - fixed reentrancy https://github.com/vacp2p/minime/pull/24 - - rised coverage from 54.62% to 67.23% https://github.com/vacp2p/minime/pull/33 - - Alter Minime to allow being extended to specialized tokens (such as OptimismMintableERC20) https://github.com/vacp2p/minime/pull/32 - - create script for detailed gas-report https://github.com/vacp2p/minime/pull/25 - - locally optimized gas usage - -### vac:zkvm: -- `proofsystems:vac:research-existing-proof-systems` - - Written a document for [State Separation](https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#0fcbf60bda2049d387334e5f5dd91547) motivation for Nescience - - Readings to justify Goal 3 - - Considered some scientific paper format for Nescience - - Worked on Jolt writeup draft (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#fae64ac478004b749f7b211a9542f2d2) - - Started research on Poseidon paper (https://eprint.iacr.org/2019/458.pdf) and is implementations - - Logos research call presentation. - - Notes on Recproof (WIP) and zkTree [(same document)](https://file.notion.so/f/f/1518abd9-c08f-4989-93c1-96525e62bce5/a9097bd6-371d-4408-9302-57dbb114f5ea/Recproof___Notes_(1).pdf?id=b6e0cccd-2aa9-4b7f-b340-6293e7c783e0&table=block&spaceId=1518abd9-c08f-4989-93c1-96525e62bce5&expirationTimestamp=1695513600000&signature=SbII5tn2mPT2yNloyJtnWw2bxzZQFFkjz-vyKqcPxtk&downloadName=Notes+-+Recproofs+and+zkTrees+%28WIP%29.pdf). - - Notes on Poseidon2 (WIP) - -- `proofsystems:vac:benchmarks` - - Added an explanation for [Plonky2 circuit](https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#6c98b04e92d0480c8d3ee24fab967f9b) [To add to GitHub] - - Started reading Nova circuit to provide an explanation of what the circuit is doing - - finish up Nova bellman benchmark https://github.com/vacp2p/zk-explorations/pull/14 - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Investigated the issue with failing attestation, Fixed the exclusion of connected peer - - Debugged the latency script evaluation/ Recalculated stats. -- `valpriv:vac:tor-push-paper` - - Updated the structure of the paper and added tentative contributions to the paper. - - Added sections on latency and security analysis in the results section along with the potential limitations of the proposed method. -- `gossipsub-improvements-paper` - - Research log post for GossipSub improvements is ready for review - - Incorporated changes to the Introduction, and Related work. Results part is still a work in process. -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Writing the pseudocode (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Adding discussion to the high level protocol document(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) -- `:nomos:review` - - Reviewing https://www.notion.so/Data-Availability-Specification-c3961b681eba4ccdab2be9181e4207b4#3df2088e8a9b4c048310e51ff8e577a8 - -### vac:rfc: -- `status:port-status-specs` - - porting 2/ACCOUNTS to vac rfcs (RFC 65); in review process - - 63/STATUS-Keycard-Usage merged https://rfc.vac.dev/spec/63/ - diff --git a/content/vac/updates/2023-10-02.md b/content/vac/updates/2023-10-02.md deleted file mode 100644 index 56cc722a3..000000000 --- a/content/vac/updates/2023-10-02.md +++ /dev/null @@ -1,132 +0,0 @@ ---- -title: "2023-10-02 Vac weekly" -tags: - - "vac-updates" -date: 2023-10-02 -lastmod: 2023-10-02 -draft: false ---- - -### vac:p2p: -- `nim-chronos:vac:maintenance` - - Opened alternative [fix](https://github.com/status-im/nim-chronos/pull/449) for closure completion issue -- `nimlibp2p:vac:gossipsub-stagger-send` - - Continued simulations -- `nimlibp2p:vac:webrtc-transport` - - Continued vertical integration of protocols -- `nim-libp2p:vac:maintenance` - - Merged gossipsub IWANT [fix](https://github.com/status-im/nim-libp2p/pull/944) - -### vac:tke: -- `vac:tke::codex:economic-analysis` - - Codex pushed meeting back again, reviewing this week to get in sync on timeline and steps for final delivery -- `vac:tke::status:SNT-staking` - - John has reviewed goverance process itself, governance proposal template, staking gov proposal, finalize details with him this week - - Complete anonymous user matching proposal draft - - Still some differences between design and implementation in SC, Martin working on these items in order to hand off - - Rewards should not be claim order dependent - - Restaking mechanism, same vault vs create new vault - - Rewards can be claimed retroactively vs GMX style model of needing to claim in real-time -- `vac:tke::nomos:economic-analysis` - - Frederico in regular communication with Alvaro, continuing on Private Addressing research -- `vac:tke::waku:economic-analysis` - - Martin follow up with Sergei on collaboration ideas and feedback on WAKU so far - -### vac:dst: -- `wakurtosis:vac:retrospective-rlog` - - Delivered for first round of reviews (https://github.com/vacp2p/vac.dev/pull/131) -- `wakurtosis:vac:rlog` - - Taken care of review comments, still issues with results (injection loss) -- `eng-10ktool:vac:bandwidth-test` - - Changed dst-node code to fit a K8s environment - - Put dst-node in dockerhub - - Run as many nodes as possible on two machines with plain Kubernetes -- `software-testing:waku:test-plans` - - Finished the Relay test plan: https://www.notion.so/Relay-c91b6df8d96a4527b5d2d599bf8dd54e -- `software-testing:waku:test-automation-js-waku` - - Added new tests for **static sharding** feature (phase 1) to cover filter, lighPush, store and relay protocol. Also changed existing methods and tests to support multiple pubSubTopics. Awaiting review: https://github.com/waku-org/js-waku/pull/1624 - - Started refactoring and adding new tests for **store** protocol. Draft PR: https://github.com/waku-org/js-waku/pull/1627 - - Helped investigating a change in nwaku that caused issues in the js-waku lightPush tests -- `software-testing:waku:test-automation-nwaku` - - Merge coverage https://github.com/waku-org/nwaku/pull/2067 - - Update open Filter PRs - - Implement waku filter tests (Unsubscribe, payloads, security and privacy) - - [Unsubscribe PR](https://github.com/waku-org/nwaku/pull/2085) - - [Unsubscribe All, Payloads, and Privacy and Security PR](https://github.com/waku-org/nwaku/pull/2095) - - [Node Privacy and Security PR](https://github.com/waku-org/nwaku/pull/2096) - - Implement returning error on "unsubscribing from non-subscribed server" (Change inside `Unsubscribe PR`) -- `software-testing:waku:test-automation-go-waku` - - Ran Go's coverage report to see about unit tests - - Built and played with Waku v2 Filter example, docker image locally - - Wrote Dockerfile and test container image build workflow - - go-waku's test docker registry @quay.io is in preparation with jakubgs - -### vac:acz: -- `zerokit:vac:zerokit-v0.4` - - unblocked rln-v2 proof verification, pending rln-wasm bug fix -- `secure-channels:waku:ethereum-chat` - - Completed a first version of the WiP including an extension to group chats. - - Completed a first approach to using Noise nomenclature for X3DH and the DH ratchet in the double ratchet. - - Studied how to approach Signal's PQXDH in terms of Noise. - -### vac:sc:: -- `status:community-contracts-deployer` - - Code clean up https://github.com/status-im/communities-contracts/pull/17 - - Custom token events https://github.com/status-im/communities-contracts/pull/18 -- `status:community-curation-contracts` - - Finish moving to foundry template https://github.com/status-im/community-dapp/pull/69 - - Add foundry deployment script https://github.com/status-im/community-dapp/pull/70 - - Introduce evaluation limit and use minime token https://github.com/status-im/community-dapp/pull/72 - - Smaller additional PRs - - Remove safeMath/save gas https://github.com/status-im/community-dapp/pull/71 - - Use OZs Ownable https://github.com/status-im/community-dapp/pull/73 - - Production parameters https://github.com/status-im/community-dapp/pull/74 -- `status:SNT-optimism-bridge` - - Move repository to foundry template - - Add modern minime as dependency https://github.com/logos-co/optimism-bridge-snt/pull/9 -- `status:community-contracts-ERC20` - - Added Owners and Master tokens to Community ERC20 contract -- `status:SNT-optimism-bridge` - - [report for certora](https://notes.status.im/_dVHPVA9TZe-ORa_SNkmJg#) - - [implement ERC2612](https://github.com/vacp2p/minime/pull/36) - - [improve code and gas cost](https://github.com/vacp2p/minime/pull/39) - - [coverage to almost 100%](https://github.com/vacp2p/minime/pull/33) - - [improve abstraction of MiniMeBase](https://github.com/vacp2p/minime/pull/34) - - work on SNTPlaceHolder issues - - [add claimTokens](https://github.com/logos-co/optimism-bridge-snt/pull/11) - - [remove safemath](https://github.com/logos-co/optimism-bridge-snt/pull/10) - -### vac:zkvm: -- `proofsystems:vac:research-existing-proof-systems` - - Written a document for Proof Creation and Verification (Goal 3 for Nescience) - WIP 70% - - Started a first draft for research article for Nescience - - Started readings on bulding secure zkVMs - - Researched on Poseidon paper (https://eprint.iacr.org/2019/458.pdf) and is implementations - - Finished Jolt writeup (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#43de765557544ec59efa038a2d39c98b) -- `proofsystems:vac:benchmarks` - - added ducumentation to plonky2 code (https://github.com/vacp2p/zk-explorations/pull/15) - - Work on [Halo2-benchmark](https://github.com/vacp2p/zk-explorations/pull/11) - - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Reducing attestation miss rate, separating peerpool/conn table for torswitch -- `valpriv:vac:tor-push-paper` - - paper updated -- `gsub-scaling:vac:unstructured-p2p-improvements-survey` - - Incorporated suggested changes GossipSub improvements research log post (https://github.com/vacp2p/vac.dev/pull/130). Currently doing proofreads, and readjusting citations. -- `gsub-scaling:vac:gossipsub-simulation` - - Pull request created for GossipSub shadow simulation. -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Writing the psuedocode (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Adding discussion to the high level protocol document(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) -- `:nomos:review` - - Reviewing https://www.notion.so/Data-Availability-Specification-c3961b681eba4ccdab2be9181e4207b4#3df2088e8a9b4c048310e51ff8e577a8 -- `zk:codex:storage-proofs-open-problems-review` - - sync with Codex on the issues - -### vac:rfc: -- `status:port-status-specs` - - clean up 65/status-accounts spec, draft of test vectors which were omitted - - Continue and finish porting a version of the PAYLOADS spec https://github.com/vacp2p/rfc/pull/612 - diff --git a/content/vac/updates/2023-10-09.md b/content/vac/updates/2023-10-09.md deleted file mode 100644 index a323c721c..000000000 --- a/content/vac/updates/2023-10-09.md +++ /dev/null @@ -1,130 +0,0 @@ ---- -title: "2023-10-09 Vac weekly" -tags: - - "vac-updates" -date: 2023-10-09 -lastmod: 2023-10-09 -draft: false ---- - -### vac:p2p: -- `nimlibp2p:vac:webrtc-transport` - - Continued vertical integration of protocols - - Started DataChannel [implementation](https://github.com/status-im/nim-webrtc/pull/4) (last protocol in the stack) -- `nimlibp2p:vac:gossipsub-ddos-mitigation`: - - Merged [last part](https://github.com/status-im/nim-libp2p/pull/954) of the ddos mitigation. End of this milestone, next step is to enable in nimbus - -### vac:tke: -- `vac:tke::codex:economic-analysis` - - Codex meeting confirmed for Tuesday, reviewing this week to get in sync on timeline and steps for final delivery (@Matty) -- `vac:tke::status:SNT-staking` - - Discuss anonymous user matching proposal with John (@Matty) - - Complete all edits of all 3 proposals based on John's feedback (@Matty) - - Improvements to smart contract implementation (claim order dependency), and refactoring, actively working with SC team (@Martin) - - Finance (Matt Nemer and Adam) asked for refresh of the economic model/projections this month (@Matty) -- `vac:tke::nomos:economic-analysis` - - Frederico remains in regular communication with Alvaro and Marcin, continuing on Private Addressing research (@Frederico) - -### vac:dst: -- `analysis-shadow:vac:shadow-gossipsub-analysis` - - Bandwidth analysis with 'plot-shadow' (https://github.com/shadow/shadow/blob/main/src/tools/plot-shadow.py) - - Temporal graph extraction / analysis of gossipsub node -- `wakurtosis:vac:rlog` - - Running new batch of simulations -- `analysis:nomos:simulation-analysis` - - work on additional set of analysis and ways to resolve the tree/branch discrepancy; analysis/data collection is priority - - Adding "realistic" network delays to the simulations is an immense memory hog and DST machine crashed repatedly for days together; - - special thanks for Jakub for promptly resetting the machine, but it still took days to figure usable parameters - - Took all week *and* weekend to get just one run for 10k nodes -- `wakurtosis:waku:gossipsub-topology-analysis` - - The CollectNet PR (https://github.com/vacp2p/wakurtosis/pull/143) -- `eng-10ktool:vac:bandwidth-test` - - K8s configurations https://github.com/vacp2p/10ksim/issues/1 - - POD limites per node (point 4) - - Available IPs per node (point 4) - - Parallelize StatefulSets (point 5) - - Set second machine as Schedulable -- `software-testing:waku:test-automation-js-waku` - - Finished adding new [tests](https://github.com/waku-org/js-waku/pull/1627) for **store** protocol. - - Increased coverage from 9 tests to ~60. - - Discovered several issues/discrepancies that I've raised with the Waku teams. - - Added small [fix](https://github.com/waku-org/js-waku/pull/1628) for some flaky tests - - [Updated](https://github.com/waku-org/js-waku/pull/1632) docker hub org from where the tests fetch nwaku/gowaku images -- `software-testing:waku:test-automation-nwaku` - - Begin Relay subscribe tests - - Message id (https://github.com/waku-org/nwaku/pull/2101) - - Subscribe WIP (No PR yet) - - Investigate possible missbehaviours, diving into libp2p code. - - Open relay subscription bug issue: https://github.com/waku-org/nwaku/issues/2114 -- `software-testing:waku:test-automation-go-waku` - - Go-waku's test docker registry @quay.io is working well - - Dockerfile and test container image build workflow tested & merged https://github.com/waku-org/go-waku/pull/792 - - Wrote first test and found first bug - fixed by devs already https://github.com/waku-org/go-waku/commit/d900a6c81457cdb9bd264867d61064fc923a4d30 https://github.com/waku-org/go-waku/pull/794 - -### vac:acz: -- `zerokit:vac:zerokit-v0.4` - - Merged PR https://github.com/vacp2p/zerokit/pull/217 - - Fixed ffi tests - - completed release, milestone complete - https://github.com/vacp2p/zerokit/releases/tag/v0.4.1 -- `rlnp2p:waku:multi-epoch-constraint` - - Start working on a more concise solution for the problem -- `secure-channels:waku:ethereum-chat` - - Increase the level of detail in the description of the WiP towards the creation of an RFC - -### vac:sc:: -- `status:SNT-optimism-bridge` - - [Update bridge repo to latest `vacp2p/minime` dependency](https://github.com/logos-co/optimism-bridge-snt/pull/14) - - [Implemented foundry deploy script](https://github.com/logos-co/optimism-bridge-snt/pull/17) - - [Custom errors over string messages](https://github.com/logos-co/optimism-bridge-snt/pull/18) - - [Token controller rename](https://github.com/logos-co/optimism-bridge-snt/pull/19) -- `status:community-contracts-ERC20` - - [Helped with adding owner/token-master access control](https://github.com/status-im/communities-contracts/pull/19) -- `status:community-curation-contracts` - - [Deployed contracts on goerli](https://github.com/status-im/community-dapp/pull/77) -- `status:community-contracts-maintenance` - - [Landed custom minting events](https://github.com/status-im/communities-contracts/pull/18) - - update the erc20 contract to have owner/master tokens - - added CommunityOwnable contract with base auth - - Fix and update failing tests and deploy erc20 implementation to testnet - - PR: https://github.com/status-im/communities-contracts/pull/19 - -### vac:nescience: -- `state-separation:vac:state-separation-doc` - - Researching techniques for state separation - - Started a new document about how to implement state separation -- `proofsystems:vac:research-existing-proof-systems` - - Finished the document about [Proof Creation and Verification] (Goal 3 for Nescience) - To share soon - - Still doing some research on how to make Nescience compact for an article - - Several readings on bulding secure zkVMs - - Prepared a draft on Starky (https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#4e5bc7f510c042609139bffd5534e69b) -- `proofsystems:vac:benchmarks` - - Added an explanation for [Nova-Scotia circuit](https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#371accf979444502844fcad6738789fc) - - Prepared poseidon-starky circuit generation part - - Begin code review for [Nova benchmark](https://github.com/vacp2p/zk-explorations/pull/13) - - Continue working on [Halo2 benchmark](https://github.com/vacp2p/zk-explorations/pull/11) - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Separating tor context from normal and implemented new [PR](https://github.com/vacp2p/nimbus-eth2-experimental/pull/4) - - For over 4 days, monitored attestation success with near zero attestation drop rate, effectiveness varies - - with opt incl distance, but automatically recovers to 86% on average -- `valpriv:vac:tor-push-paper` - - more updates to the paper -- `gsub-scaling:vac:unstructured-p2p-improvements-survey` - - pushed the recommended changes for GossipSub improvement blogpost for approval - - studied different proximity estimation, bandwidth estimation techniques for GossipSub improvements -- `gsub-scaling:vac:gossipsub-simulation` - - Upgraded my system to execute relatively larger networks. Executed relatively larger simulations (upto 9000 nodes) to analyze the impact of D on message spread and the number of messages. -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Writing the psuedocode (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Adding discussion to the high level protocol document(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) -- `zk:codex:storage-proofs-open-problems-review` - - Getting up to speed on Codex documents: [Balazs' sampling](https://github.com/codex-storage/zk-research-artifacts/blob/master/sampling/sampling.pdf) - - shared minor math error in Discord, [Codex's EC requirements](https://hackmd.io/D7-DWiodSp-GD7YAIgQ06Q), [Preventing data loss](https://docs.google.com/document/d/1f01MOr-jKE4q24B9COlRaT0wOgxhbCwLjSN68H2-lC0/edit#heading=h.nvinp7wmkq2o), [Block placement](https://github.com/orgs/codex-storage/discussions/119), [Compact Proofs of Retrievability](https://eprint.iacr.org/2008/073.pdf), [Codex storage proofs rationale](https://hackmd.io/tzgIJ2j9SECq2e4zBIbCXg) - -### vac:rfc: -- `status:port-status-specs` - - merged rfc 65 - - reviewed waku-usage rfc, unclear if the old rfc can be ported as it is no longer relevant - - PAYLOADs almost done, addressing review comments - diff --git a/content/vac/updates/2023-10-16.md b/content/vac/updates/2023-10-16.md deleted file mode 100644 index e0429be2a..000000000 --- a/content/vac/updates/2023-10-16.md +++ /dev/null @@ -1,136 +0,0 @@ ---- -title: "2023-10-16 Vac weekly" -tags: - - "vac-updates" -date: 2023-10-16 -lastmod: 2023-10-16 -draft: false ---- - -### vac:p2p: -- `nimlibp2p:vac:webrtc-transport` - - Started to implement DataChannel in WebRTC: https://github.com/status-im/nim-webrtc/pull/4 - - Started to implement the WebRTC transport in libp2p: https://github.com/status-im/nim-libp2p/pull/ - - rework of UDP / Stun / Dtls / Sctp https://github.com/status-im/nim-webrtc/pull/ -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - https://github.com/libp2p/jvm-libp2p/pull/336 - -### vac:tke: - - `vac:tke::codex:economic-analysis` - - Met w/ Codex and reviewed the marketplace workflows, identified many updates for litepaper (@Matty) - - Will update litepaper incorporating feedback, and update Codex modeling, reconnect after their offsite - - `vac:tke::status:SNT-staking` - - Update notion docs with links to all latest governance proposals - - Assigning issues in Github to SC team, and submit pull reqs, primarily on dependency the claims, and how restaking works (@Martin) - - Continuing revamp of economic model/projections, review early approach w/John (@Matty) -- `vac:tke::nomos:economic-analysis` - - Frederico remains in regular communication with Alvaro and Marcin, continuing on Private Addressing research (@Frederico) - - Reviewing similar challenges ETH is also considering, changes to economic model for adding native delegation -- `vac:tke::waku:economic-analysis` - - Had a call with Aaryamann and Sergei last week, they had followup questions on fleshing out pros/cons of various design approaches to RLN stake (@Martin) - -### vac:dst: -- `analysis-shadow:vac:shadow-gossipsub-analysis` - - Fixed timestamp bug - - Updated traffic injection to continuous operation - - Created IPFS mesh slices of arbitrary time length -- `analysis:nomos:simulation-analysis` - - Finally zero'd in on the tree/branch bug. The pre and post-analysis are fine, the bug is in the Carnot sim. - - The view installation time distribution with network delays is now done -- `dr-support:vac:carnot-2-3rds-python-impl` - - investigate Carnot sim code -- `eng-10ktool:vac:bandwidth-test` - - Finish exporting metrics (delayed) - - Make sure new CIDR configuration supports 10k PODs -- `wakurtosis:vac:rlog` - - finish simulations -- `software-testing:waku:test-automation-js-waku` - - New tests: - - [Relay[WIP]](https://github.com/waku-org/js-waku/pull/1649) - - Improvements: - - Speed up execution from 12m to 3.5m for 250 tests through [parallelization](https://github.com/waku-org/js-waku/pull/1655)(Significant refactoring needed to achieve this) - - Follow up [fix](https://github.com/waku-org/js-waku/pull/1662) to only allow paralellization in CI env - - Fixes: - - Updated [tests](https://github.com/waku-org/js-waku/pull/1661) after gowaku store fixes - - Updated [tests](https://github.com/waku-org/js-waku/pull/1645) after remote peer rejected error -- `software-testing:waku:test-automation-nwaku` - - Relay and message id tests - - [PR](https://github.com/waku-org/nwaku/pull/2101) - - Merge filter subscribe PRs; Pending unsubscribe, missing one review. - - Heavily investigate issues shown on tests - - Max 1MB message size, no graceful handle. - - After stopping and restarting a relay node, can't reconnect it with `connectRelay`. - - Can't stop a relay node and send a message: Inconsistent with filter push behaviour. - - Publishing multiple messages in a row triggers the same SEGFAULT as when refreshing a subscription. -- `software-testing:waku:test-automation-go-waku` - - Wrote five tests - were added to the branch https://github.com/waku-org/go-waku/tree/chore(filterV2)-test-updates - - Reported issue "Messages won't get through with multiple pubsub topics" https://github.com/waku-org/go-waku/issues/804 - - Tracking coverage as notes so far -> will change to tabular form. Notion has API, we could possibly update docs during test execution? https://www.notion.so/Filter-Test-Coverage-42fc15b503ec4621980a7757d85089db?pvs=4 - -### vac:acz: -- `rlnp2p:waku:rln-doc-and-outreach` - - worked on the rln rlog - https://github.com/vacp2p/vac.dev/pull/132 -- `misc` - - explored next iteration of rln, which includes message sizes within the proof -- `rlnp2p:waku:multi-epoch-constraint` - - Keep working on a solution for the problem. (https://www.notion.so/WiP-Multi-epoch-Constraints-a5b648b98c46461187563d6c1e094468) -- `secure-channels:waku:ethereum-chat` - - Keep improving the level of detail in the description of the WiP towards the creation of an RFC. (https://www.notion.so/WiP-Secure-Ethereum-Chat-f69ff155456c4fdeb719aba96fd7a8ab) - -### vac:sc:: -- `status:snt-staking-contract-maintenance` - - Added additional tests - - https://github.com/logos-co/staking/pull/27 - - https://github.com/logos-co/staking/pull/36 - - Use custom errors over error strings - - https://github.com/logos-co/staking/pull/28 - - https://github.com/logos-co/staking/pull/29 - - https://github.com/logos-co/staking/pull/30 - - https://github.com/logos-co/staking/pull/35 - - Some cleanup - - https://github.com/logos-co/staking/pull/26 - - https://github.com/logos-co/staking/pull/25 - - Introduced `VaultFactory` - - https://github.com/logos-co/staking/pull/38 -- `status:community-contracts-maintenance` - - Deployed community token deployer contracts to Sepolia - - https://github.com/status-im/communities-contracts/pull/20 -- `codex:review-codex-contracts` - - Did a first quick review of the code, notes can be found here - - https://www.notion.so/Codex-Marketplace-Contracts-337a2e38fa574a2d8ffb589f4f599 - -### vac:nescience: -- `state-separation:vac:state-separation-doc` - - Finished and shared a new document about [state separation techniques](https://www.notion.so/zkVM-cd358fe429b14fa2ab38ca42835a8451?pvs=4#ef4efe76c6244c37974cb4355bb1fcd8) - - Keep researching and adding updates -- `proofsystems:vac:research-existing-proof-systems` - - Still working on *Proof Creation and Verification* (Goal 3 for Nescience), specifically trying to identify novel techniques - - Considering article for Nescience - - Continuous readings on bulding secure zkVMs - - discussion on Sona proof system (from Lasso paper) and alternatives (Hyrax, KZG, FRI) - - Reserched the connection between plonky2 and starky -- `proofsystems:vac:benchmarks` - - Starting a draft for an article (overleaf) - - working on Halo2 [benchmark](https://github.com/vacp2p/zk-explorations/pull/11) - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Getting fleet nimbus node measurements. - - For [PR](https://github.com/vacp2p/nimbus-eth2-experimental/pull/4), over 11 days, monitored attestation success with near zero attestation drop rate, effectiveness 89% - - Investigating why opt. incl distance degrades occassionally -- `valpriv:vac:tor-push-paper` - - Added changes in https://www.overleaf.com/project/6499e467346d9f56b2971ca -- `gsub-scaling:vac:gossipsub-simulation` - - Digged deeper into the gossipsub implementation in nim-lib-p2p. - - Modified handling of large messages in the existing implementation. Modified message relaying behavior - - We relay the large messages to only d_low peers and other peer are sent an IDONTWANT message. - - Unreceived large messages are requested using IWANT message. - - We save approximately 40% bandwidth, on cost of approximately 2 RTTs to the opverall message latency -- `consensus:nomos:carnot-vote-2-3rds-vote-aggregation` - - Writing the psuedocode (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Adding discussion to the high level protocol document(https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) - -### vac:rfc: -* `status:port-status-specs` - - reviewed waku usage of status, draft of rfc - diff --git a/content/vac/updates/2023-10-23.md b/content/vac/updates/2023-10-23.md deleted file mode 100644 index 2581f31cc..000000000 --- a/content/vac/updates/2023-10-23.md +++ /dev/null @@ -1,138 +0,0 @@ ---- -title: "2023-10-23 Vac weekly" -tags: - - "vac-updates" -date: 2023-10-23 -lastmod: 2023-10-23 -draft: false ---- - -### vac:p2p: -- `admin` - - restructure -- `nimlibp2p:vac:maintenance` - - Find a fix for https://github.com/waku-org/nwaku/issues/2140 - - PR: `Test: Remove workflow for Nim Devel from "Daily"` https://github.com/status-im/nim-libp2p/pull/968 - - nim devel test will still be run daily, but in a separate CI workflow -- `nimlibp2p:vac:webrtc-transport` - - Successfully compile the full stack and start debugging. -- `nimlibp2p:vac:gossipsub-ddos-mitigation` - - https://github.com/status-im/nim-libp2p/pull/965 -- `nimlibp2p:vac:maintenance` - - Add arm64 support when running HP tests locally - - https://github.com/libp2p/test-plans/pull/311 and https://github.com/libp2p/rust-libp2p/pull/4687. (This is a blocker for: Add Hole Punching to libp2p test-plans - https://github.com/status-im/nim-libp2p/issues) - -### vac:tke: -- `vac:tke::codex:economic-analysis` - - Updating Codex "growth model" and migrating litepaper to notion w/ Codex feedback (@Matty) - - Providing fundraise (Matt Nemer) w/ high level summary of financials and token design (@Matty) -- `vac:tke::status:SNT-staking` - - Helping John with final preparation for website launch, setting up Snapshot space (@Martin) - - Ongoing w/ SC team for staking contract implementation (@Martin) - - Discussed "growth model" (economic projections) w/ John, Chandler, and finance, aligning w/ Chandlers model (@Matty) -- `vac:tke::nomos:economic-analysis` - - Finished drafting high level proposals on Private Addressing research, reviewing w/ Marcin (@Frederico) - - Returning to native delegated staking research, based on recent developments in ETH and Lido (@Fredico) -- `vac:tke::waku:economic-analysis` - - Joining Waku Reseach Sync calls going forward to stay up to date on progress w/ Sergei (@Martin) - - Reviewing Sergei's notes so far on waku-org/research, and completing followup requests from Aaryaman and Sergei - -### vac:dst: -- `wakurtosis:vac:rlog` - - Pushed changes with new results (https://github.com/vacp2p/vac.dev/commit/c67ea09ac17a6049529983ef325ae4d9c6c24e2d) -- `analysis-shadow:waku:shadow-waku-relay-analysis` - - Investigating best approach for large scale (new wakunode2 with traffic vs external RPC calls) -- `eng-10ktool:vac:bandwidth-test` - - Fix problem in multicloud-cluster: - - https://github.com/status-im/infra-misc/issues/184 - - https://github.com/k3s-io/k3s/discussions/8657 - - Check Prometheus metrics -- `software-testing:waku:test-automation-js-waku` - - New tests: - - [Relay](https://github.com/waku-org/js-waku/pull/1649) - awaiting review - - Improvements: - - Test report dashboard. [PR](https://github.com/waku-org/js-waku/pull/1668) and [deployment](https://waku-org.github.io/allure-jswaku/5700/#) - awaiting review - - Issues found: - - Nwaku [regression](https://github.com/waku-org/nwaku/issues/2147) around store cursor - - JS-waku possible issue around duplicate messages -- `software-testing:waku:test-automation-nwaku` - - Issues - - Resubscription SEGFAULT - - Reinvestigated and found it was a test case error, a `futures` issue. - - Closed [Ticket](https://github.com/waku-org/nwaku/issues/2114) - - Publishing multiple messages in a row triggers the same SEGFAULT as when refreshing a subscription. - - Same as above - - Max message sizes don't match RFC - - Reinvesitgated because some sizes weren't correct. - - Opened [Ticket](https://github.com/waku-org/nwaku/issues/2146) - - After stopping and restarting a relay node, it can't reconnect with connectRelay. - - Reinvestigated because a comment by Aaryamann. - - Opened [Ticket](https://github.com/waku-org/nwaku/issues/2145) - - Began implementing Store tests. - - Got a working GDB for NIM with VSCode integration. Not great, but it's something. - - Cleaned up Filter and Relay tests, and added missing payload size tests. - - [PR](https://github.com/waku-org/nwaku/pull/2138 -- `software-testing:waku:test-automation-go-waku` - - Wrote five tests - were added to the branch https://github.com/waku-org/go-waku/tree/chore(filterV2)-test-updates - - Reported issue "Subscription with empty contentTopic should fail" https://github.com/waku-org/go-waku/issues/810 - - Retested issues #804 and #810 - learned a lot from Prem Prathi - -### vac:acz: -- `rlnp2p:waku:rln-doc-and-outreach` - - continued work on rlog, improvements - - progcrypto sync with pse, presentation work - https://hackmd.io/wS2MAfSvSK-tnxzcriah9A -- `admin/misc` - - supporting DST, working on waku relay segfault, resolved -- `secure-channels:waku:ethereum-chat` - - Include some considerations on the extension to group chat revolving around asynchronous ratcheting trees. - - Start writing the raw version of the RFC. - - https://www.notion.so/WiP-Secure-Ethereum-Chat-f69ff155456c4fdeb719aba96fd7a -- `zerokit:vac:maintenance` - - prepared refactoring PR (https://github.com/vacp2p/zerokit/pull/219) - -### vac:sc:: -- `status:community-curation-contracts` - - Adjusted deploy script to mint mock SNT token on local node (this was needed for testing purposes) - - PR: https://github.com/status-im/community-dapp/pull/80 - - Fixed deployment script to ensure directory contracts are set in voting contracts - - https://github.com/status-im/community-dapp/pull/81 - - Fixed deployment that ensures `Multicall2` is available on local nodes as well as references for production networks - - PR: https://github.com/status-im/community-dapp/pull/82 -- `vac:sc::status:snt-staking-contract_02` - - Implement missing checks for staking lockup period - - PR: https://github.com/logos-co/staking/pull/39 - -### vac:nescience: -- `state-separation:vac:state-separation-doc` - - Researching techniques for state separation and how to integrate different models. - - Researched and [posted a document](https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#d75a43599f3f45d6a838527a403d9c39) on Verkle tree. - - Began research on ring signatures ([DualRing](https://eprint.iacr.org/2021/1213.pdf) and [DualDory](https://eprint.iacr.org/2023/1177)) (doc pending) -- `proofsystems:vac:research-existing-proof-systems` - - Published a new document about [Proof Creation and Verification](https://www.notion.so/Nescience-cd358fe429b14fa2ab38ca42835a8451?pvs=4#02b7fdf29dac4dc18b3f15b756c7da57) -- `proofsystems:vac:benchmarks` - - Started a draft for an article (overleaf) - - applied feedback for the Nova-Scotia PR - - Wrote the halo2 aggregation circuit (issues with testing, need more CPU power, will use DST server) - -### vac:dr: -- `valpriv:vac:tor-push-poc` - - Scaled up execution of TEN multiple simultanesous torpush-validators with near zero attestation misses - - Gathering measurements from other fleet nodes (blocked at) -- `valpriv:vac:tor-push-paper` - - Added more graphs, completed abstract, comparisons in the paper. - - Still reviewing new paper to incorporate https://www.research.ed.ac.uk/en/publications/on-the-anonymity-guarantees-of-anonymous-proof-of-stake-protocols -- `gsub-scaling:vac:gossipsub-simulation` - - Modified large message handling mechanism (outlined below) for GossipSub. - - Now we send large message to randomly selected (dlow-1) peers. - - Remaining peers get idontwant message - - Missed out nodes use iwant message to pull the missing large message - - Approximately 20-25% overall message reduction achieved and 1/2 RTT latency increased for approximately 5% nodes -- `gsub-scaling:vac:unstructured-p2p-improvements-survey` - - Started following discussions for current gossipsub improvement direcetions -- Writing the pseudocode and addressed comments from Nomos team (https://github.com/logos-co/nomos-specs/blob/Carnot-vote-aggregation/carnot/carnot-vote-aggregation.py). - - Responded to questions raised in the high level protocol document (https://www.notion.so/High-Level-Algorithm-6535ac0363df4629ad2c40dff4bc62cd) by the nomos team. - -### vac:rfc: -- `status:port-status-specs` - - waku usage rfc - https://github.com/vacp2p/rfc/pull/627 - diff --git a/content/waku/index.md b/content/waku/index.md deleted file mode 100644 index 1ae1530b7..000000000 --- a/content/waku/index.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Waku Roadmap -tags: -- "Waku Roadmap" -- "overview" -date: 2023-08-22 -lastmod: 2023-09-19 ---- - -Welcome to the Waku Roadmap Overview - -Waku is a family of robust, censorship-resistant communication protocols designed to enable privacy-focused messaging for Web3 apps. To learn more please visit the [website](https://waku.org) and [docs](https://docs.waku.org). - -- [[waku/monthly-reports/2023-sept|2023 September Report]] -- [Milestones](waku/milestones-overview.md) -- [Weekly updates](tags/waku-updates) -- [Reports](waku/reports.md) diff --git a/content/waku/milestone-waku-10-users.md b/content/waku/milestone-waku-10-users.md deleted file mode 100644 index 89f9acad4..000000000 --- a/content/waku/milestone-waku-10-users.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: "Milestone: Waku Network supports 10k Users" -date: "2023-08-07" -lastmod: "2023-08-07" -draft: false ---- - -```mermaid -%%{ - init: { - 'theme': 'base', - 'themeVariables': { - 'primaryColor': '#BB2528', - 'primaryTextColor': '#fff', - 'primaryBorderColor': '#7C0000', - 'lineColor': '#F8B229', - 'secondaryColor': '#006100', - 'tertiaryColor': '#fff' - } - } -}%% -gantt - dateFormat YYYY-MM-DD - section Scaling - 10k Users :done, 2023-01-20, 2023-07-31 -``` - -## Completion Deliverable -TBD - -## Epics -- [Github Issue Tracker](https://github.com/waku-org/pm/issues/12) diff --git a/content/waku/milestones-overview.md b/content/waku/milestones-overview.md deleted file mode 100644 index 5568f2633..000000000 --- a/content/waku/milestones-overview.md +++ /dev/null @@ -1,349 +0,0 @@ ---- -title: Waku Milestones Overview -date: 2023-08-07 -lastmod: 2023-09-30 -draft: false ---- -### Milestone: Waku Network can Support 1 Million Users - -Link: https://github.com/waku-org/pm/milestone/4 - -Due by: 2023-11-30 - - - -Epic: Cater for professional operators (Status Communities) - -- Link: https://github.com/waku-org/pm/issues/92 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1929 - -- https://github.com/fryorcraken/milestone-update/ - - - -Epic: Simulation with 10k nodes - -- Link: https://github.com/waku-org/pm/issues/85 - -- Issues in Epic: - -- https://github.com/vacp2p/research/issues/191 - - - -Epic: PostgreSQL in service node: Further optimisations - -- Link: https://github.com/waku-org/pm/issues/84 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1894 - -- https://github.com/waku-org/nwaku/issues/1893 - -- https://github.com/waku-org/nwaku/issues/1888 - -- https://github.com/waku-org/nwaku/issues/1885 - -- https://github.com/waku-org/nwaku/issues/1842 - -- https://github.com/waku-org/nwaku/issues/1841 - -- https://github.com/waku-org/nwaku/issues/1840 - -- https://github.com/waku-org/nwaku/issues/1604 - - - -### Milestone: Waku Network Gen 0 - -Link: https://github.com/waku-org/pm/milestone/1 - -Due by: 2023-12-01 - - - -Epic: 3.4: Production and memberships on mainnet - -- Link: https://github.com/waku-org/pm/issues/87 - -- No issues in Epic description. - - - -Epic: 3.4: Further memberships - -- Link: https://github.com/waku-org/pm/issues/72 - -- No issues in Epic description. - - - -Epic: 3.3: Membership for Status Communities - -- Link: https://github.com/waku-org/pm/issues/71 - -- No issues in Epic description. - - - -Epic: 3.2: Basic DoS protection in production - -- Link: https://github.com/waku-org/pm/issues/70 - -- Issues in Epic: - -- https://github.com/waku-org/go-waku/issues/732 - -- https://github.com/waku-org/go-waku/issues/731 - -- https://github.com/waku-org/go-waku/issues/655 - - - -Epic: 1.5: Launch and dogfood integrated public Waku Network MVP - -- Link: https://github.com/waku-org/pm/issues/68 - -- Issues in Epic: - -- https://github.com/waku-org/research/issues/1 - - - -Epic: 1.4: Sharded peer management and discovery - -- Link: https://github.com/waku-org/pm/issues/67 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1941 - -- https://github.com/waku-org/nwaku/issues/1940 - -- https://github.com/waku-org/js-waku/issues/1505 - -- https://github.com/waku-org/js-waku/issues/1504 - -- https://github.com/waku-org/go-waku/issues/727 - -- https://github.com/waku-org/go-waku/issues/680 - -- https://github.com/waku-org/go-waku/issues/679 - -- https://github.com/waku-org/go-waku/issues/678 - - - -Epic: 1.3: Node bandwidth management mechanism - -- Link: https://github.com/waku-org/pm/issues/66 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1947 - -- https://github.com/waku-org/nwaku/issues/1946 - -- https://github.com/waku-org/nwaku/issues/1945 - -- https://github.com/waku-org/nwaku/issues/1938 - -- https://github.com/waku-org/js-waku/issues/1503 - -- https://github.com/waku-org/go-waku/issues/677 - - - -Epic: 1.2: Autosharding for autoscaling - -- Link: https://github.com/waku-org/pm/issues/65 - -- No issues in Epic description. - - - -Epic: 2.3: Basic distributed Store services - -- Link: https://github.com/waku-org/pm/issues/64 - -- No issues in Epic description. - - - -Epic: 2.2: Sharded capability discovery for light protocols - -- Link: https://github.com/waku-org/pm/issues/63 - -- Issues in Epic: - -- https://github.com/waku-org/js-waku/issues/1506 - - - -Epic: 2.1: Production testing of existing protocols - -- Link: https://github.com/waku-org/pm/issues/49 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1950 - -- https://github.com/waku-org/nwaku/issues/1948 - -- https://github.com/waku-org/nwaku/issues/1888 - -- https://github.com/waku-org/js-waku/issues/1463 - -- https://github.com/waku-org/js-waku/issues/914 - - - -Epic: Dogfood RLN in production - -- Link: https://github.com/waku-org/pm/issues/51 - -- No issues in Epic description. - - - -Epic: Open membership mechanism - -- Link: https://github.com/waku-org/pm/issues/52 - -- No issues in Epic description. - - - -Epic: RLN validation in production - -- Link: https://github.com/waku-org/pm/issues/55 - -- No issues in Epic description. - - - -Epic: Autosharding - dogfooding - -- Link: https://github.com/waku-org/pm/issues/58 - -- No issues in Epic description. - - - -### Milestone: Quality Assurance processes are in place - --Link: https://github.com/waku-org/pm/milestone/3 - -Due by: 2024-03-31 - - - -Epic: Comprehensive Dev Testing - -- Link: https://github.com/waku-org/pm/issues/90 - -- Issues in Epic: - -- https://github.com/fryorcraken/milestone-update/ - -- https://github.com/waku-org/js-waku/issues/1589 - -- https://github.com/waku-org/js-waku/issues/1435 - -- https://github.com/waku-org/js-waku/issues/337 - -- https://github.com/waku-org/js-waku/issues/1595 - -- https://github.com/waku-org/js-waku/issues/1597 - - - -Epic: Automated Release processes - -- Link: https://github.com/waku-org/pm/issues/86 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1889 - -- https://github.com/waku-org/js-waku/issues/1543 - -- https://github.com/waku-org/waku-rust-bindings/issues/67 - - - -Epic: End-to-end testing - -- Link: https://github.com/waku-org/pm/issues/34 - -- Issues in Epic: - -- https://notes.status.im/s/iylE6wdli# - -- https://github.com/waku-org/go-waku/issues/608 - - - -### Milestone: Support Many Platforms - -Link: https://github.com/waku-org/pm/milestone/2 - -Due by: 2024-04-30 - - - -Epic: Ship RLN as part of non-native SDKs - -- Link: https://github.com/waku-org/pm/issues/88 - -- Issues in Epic: - -- https://github.com/waku-org/go-zerokit-rln/issues/5 - -- https://github.com/waku-org/go-waku/issues/732 - -- https://github.com/waku-org/nwaku/issues/2033 - -- https://github.com/fryorcraken/milestone-update/ - - - -Epic: REST API service node - -- Link: https://github.com/waku-org/pm/issues/82 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1988 - -- https://github.com/waku-org/nwaku/issues/1985 - -- https://github.com/waku-org/nwaku/issues/1910 - -- https://github.com/waku-org/nwaku/issues/1909 - -- https://github.com/waku-org/nwaku/issues/1872 - -- https://github.com/waku-org/nwaku/issues/1652 - -- https://github.com/waku-org/nwaku/issues/1214 - -- https://github.com/waku-org/nwaku/issues/1076 - -- https://github.com/waku-org/nwaku/issues/938 - -- https://github.com/waku-org/go-waku/issues/264 - - - -Epic: NodeJS Library - -- Link: https://github.com/waku-org/pm/issues/81 - -- Issues in Epic: - -- https://github.com/waku-org/nwaku/issues/1332 \ No newline at end of file diff --git a/content/waku/monthly-reports/2023-oct.md b/content/waku/monthly-reports/2023-oct.md deleted file mode 100644 index c82b19d65..000000000 --- a/content/waku/monthly-reports/2023-oct.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: 2023 - October Monthly Waku Report -draft: true -lastmod: 2023-10-03 ---- -## Personnel -- Offer submitted to David for Applied Distributed Systems Researcher -- \ No newline at end of file diff --git a/content/waku/monthly-reports/2023-sept.md b/content/waku/monthly-reports/2023-sept.md deleted file mode 100644 index 929765d02..000000000 --- a/content/waku/monthly-reports/2023-sept.md +++ /dev/null @@ -1,111 +0,0 @@ ---- -title: 2023 September Monthly Waku Report -draft: false -lastmod: 2023-10-05 -tags: - - monthly-report - - Waku ---- -## Executive Summary -The month of September saw an agreement and solidification of the Waku roadmap which defines the process of launching the Waku Network as an independent piece of infrastructure the broader ecosystem can rely upon. Along with this, a revamp of the process in which work is labeled and tracked was performed which has an automated part and is generally more in line with the requests from the Insights team. - -Work continues in the scaling and productionization efforts across the clients. Work previously done to enables PostgreSQL engine for `WAKU-STORE` in nwaku is being locally stress tested, further stress test using dev fleet is expected to be finalized next month. A Waku static sharding strategy is being integrated into Status to accommodate the first growth milestones of the re-release and adaptive sharding research and implementation is close behind. -Local simulation of `RLN-RELAY` has enabled the discovery of minor bugs which are fixed in the latest release of zerokit and nwaku and the study of the affect of RLN on performance. - -Kurtosis as a platform was found to be insufficient for modeling a Waku network at the scale we wish, and the Vac team is pursuing an alternative strategy and writing up learnings from the boundaries were able to push. - -Quality Assurance practices are scheduled throughout the next year to keep all client implementations up to a threshold of continuous quality. - -The process to add native integration APIs to `nwaku` is underway such that the default native library moves from `go-waku` to `nwaku`. -## Key Updates - -### Personnel -- addition of - - Aaron as Project Manager - - Sergei as Researcher - - Gabriel as nwaku Engineer -- Several Jobs Descriptions have been reviewed this month to be opened shortly: - - Growth Lead/Marketing strategist to drive Waku's growth and liaise with Comms Hubs - - Business Development Lead, to further develop partnership with ecosystem projects - - Solution Engineer, to provide technical support to projects integrating Waku -- A core contributor to lead the Waku Chat SDK team has been secured, with start date in November. - -### Milestones -A lot of work has been put into coalescing and finalizing the development tracking process that is in line with the Insight Reporting requirements, and Aaron's addition to the team this month as pushed it over the edge to completion. Much of this has gone into automating the weekly reporting process via GitHub labels and comments on issues. - -For tracking Waku maintains these Milestones in the `waku-org/pm` repo. Within each milestone description, you'll find the corresponding Epics. Every Epic is distinctly labeled, and this label is affixed to each issue associated with that particular Epic. The labels are managed by the `labels.yaml` file located in the `waku-org/pm` repo. - -Given the expansive nature of Waku and its various repositories working towards the milestones, the labels established in the `labels.yaml` file are replicated across each respective `waku-org` repo. This structure allows for seamless navigation, starting from top-level milestones down to the most granular issues. - -Waku is broken out into the following four Milestones, with Epics associated with them: -- `Waku Network Gen0` -- `Waku Network Can Support 1MM Users` -- `Quality Assurace Processes in Place` -- `Support Many Platforms` - -More details on the structure and progress of all Waku work can be tracked in their PM repository, specifically [the milestone page](https://github.com/waku-org/pm/milestones). The following sections are highlighted updates on what happened this month. - -#### [Waku Network Gen0](https://github.com/waku-org/pm/issues/50) -The Waku Network RFC was created and [published on Vac](https://rfc.vac.dev/spec/64/) as RAW which details the ideas and architecture of the Waku Network. The next version of RLN was also [published on Vac](https://rfc.vac.dev/spec/58/) as RAW. - -A benchmark of RLN was conducted and [the results](https://github.com/waku-org/research/issues/23) were discussed in a [Logos Research Call presentation](https://minutes.logos.co/logos/logos-research-call-notes#september-27) (See [waku-org/research#23](https://github.com/waku-org/research/issues/23) for details). The tl;dr is copied here for convenience: - -> [!QUOTE] TLDR: -> -> ->- Proof generation is constant-ish. 0.15 second for each proof ->- Proof verification is constant-ish, 0.012 seconds. In a network with 10k nodes and D=6 this would add an overhead delay of 0.06 seconds. ->- Gossipsub scoring drops connections from spammer peers, which acts as the punishment (instead of slashing). Validated in the simulation. ->- RLN doesn't have any impact on memory consumption. - -Based on these two specification publications and other associated work, efforts have begun to launch the first dev-testnet in time for the DevConnect event in November 2023. - -All launch critical work for autosharding has been done in terms of RFC and nwaku. - -#### [Waku Network Can Support 1MM Users](https://github.com/waku-org/pm/issues/83) -Significant work was completed on the PostgreSQL integration and setup within `nwaku`, which supports the data retention and retrieval of Waku archival nodes. The implementation is currently being stress-tested to ensure production performance metrics are met. - -The efforts in simulating a Waku Network of 10k users within a single shard continues and is tracked within [[vac/dst/index|Vac DST Roadmap]]. The performance of Wakurtosis (Kurtosis backend) was found to be insufficient for our requirements for scaling simulations. The creation of a Kubernetes orchestration tool, written in Python, has begun construction. This tool is heavily architected to mimic what Codex has created. It was chosen to reproduce this tooling in Python in order to increase usability and ease of maintenance/contribution as C# is a less known language within the org. The reasoning for this development can be tracked in [[vac/dst/wakurtosis/vac/retrospective-rlog|retrospective-rlog]]. - -The effort to understand a "professional Waku node operator" has begun and initial notes can be tracked within this [minutes doc](https://notes.status.im/node-operators-meeting). - -A "static sharding" fleet was setup to test sharding and PostgreSQL by Waku team. -Setup of a similar fleet dedicated to Status Communities is in progress (the first fleet may be used in the interim). - -#### [Quality Assurance Processes in Place](https://github.com/waku-org/pm/issues/73) -This milestone was created to ensure preparedness for the upcoming production client needs (specifically Waku Network Gen0 and Status Communities). A list of required processes in place was constructed and tasked out so that all implementations of Waku go through a standardized production release cycle. - -This work is coordinating with the new [[vac/dst/index|Vac DST]] additions focused on testing rubrics for Logos Projects. This milestone is expected to be completed by Q1 2024. -Work has started to use the js-waku CI as an integration test suite for nwaku and go-waku. This test suite can now easily be run for either client as part of their release process. - -#### [Support Many Platforms](https://github.com/waku-org/pm/issues/42) - -This is a large milestone created last month that tracks Waku's "integration landscape" and attempting to ensure any developer seamlessly is able to integrate Waku. - -It has started to list the work required for completion but more detail is needed to be fleshed out on prioritization and estimated resource needs. Currently, it is slotted for completion by April 2024. - -Much of the work this month was fleshing out the available REST APIs of `nwaku`. - -A [poll](https://discord.com/channels/1110799176264056863/1111568123007606855/1149298157306531890) was created to query what language priority we should have was gone. They'll be published on socials next month to boost engagement and feedback. This poll will assist with priorities for this milestone. - -## Perceived Changes in Project Risk -- Waku doing most integration of Waku into `status-go` consumes a lot of Go-related developer resources. - - a list of needed work is tracked [here](https://github.com/status-im/status-go/issues/4057) -- There effort to convert `nwaku` to the main native integration client requires a large effort in the implementations of C-bindings in Nim and has some unknowns associated with it. Furthermore this additional effort and uncertainty doesn't directly contribute to the current critical path of development. -- The first main application of the milestone reorganization within the project has made the milestones associated with it clear, thus allowing the Waku Network MVP target setup to be tracked well - -## Future Improvement Plans -### Insight -The insight team plans to further evaluate the value the reporting process implemented by Waku as it pertains to use within the other projects under Logos. It is expected that next month it will be finalized and ready for review by other teams to see if they'd like to adopt it. - -One side effect of the automated reporting process is that the associate issue labels are already compatible with our data lake ingestion that was initiated by the Status project. This will allow us to create more useful dashboards and monitoring that take into account accurate development activity. - -### Project -As the milestones continue to be fleshed out and detailed, the ability to show progress over time will improve. - -## Sources and Useful Links -Weekly Reports -- [[waku/updates/2023-09-04|2023-09-04]] -- [[waku/updates/2023-09-11|2023-09-11]] -- [[waku/updates/2023-09-18|2023-09-18]] -- [[waku/updates/2023-09-25|2023-09-25]] diff --git a/content/waku/reports.md b/content/waku/reports.md deleted file mode 100644 index 8d1dbaa4d..000000000 --- a/content/waku/reports.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: Waku Reporting -tags: - - WakuReporting -date: 2023-10-19 -lastmod: 2023-10-19 ---- -## Meetings and Weekly Updates - -### High level reporting overview - -- Daily standups are posted in the team [discord](https://discord.waku.org). -- Weekly progress reports are submitted as comments on open issues in any public waku-org [github repository](https://github.com/orgs/waku-org/repositories). A script compiles the relevant comments and prepares for publication - - Weekly updates pertaining to progress made toward active Epics and Milestones can be found [here](https://roadmap.logos.co/tags/waku-updates). -- [Monday all-team PM meetings](https://minutes.logos.co/tags/waku-all-team-pm/) are held three times to accommodate all time zones. -- Waku client-team PM meetings are held throughout the week depending on the general timezone and schedules of the team. -- Weekly highlights are derived from the weekly dev updates and compiled in Notion for wider publication by the Comms team via the "Waku Wednesday" series on X. - -![](images/reporting-meeting-flow.png) diff --git a/content/waku/updates/2023-07-24.md b/content/waku/updates/2023-07-24.md deleted file mode 100644 index b80ecd534..000000000 --- a/content/waku/updates/2023-07-24.md +++ /dev/null @@ -1,141 +0,0 @@ ---- -title: "2023-07-24 Waku weekly" -tags: - - "waku-updates" -date: "2023-07-24" -lastmod: "2023-08-04" -draft: false ---- - -Disclaimer: First attempt playing with the format. Incomplete as not everyone is back and we are still adjusting the milestones. - ---- - -## Docs - -### **Milestone**: Foundation for Waku docs (done) - -#### _achieved_: -- overall layout -- concept docs -- community/showcase pages - -### **Milestone**: Foundation for node operator docs (done) -#### _achieved_: -- nodes overview page -- guide for running nwaku (binaries, source, docker) -- peer discovery config guide -- reference docs for config methods and options - -### **Milestone**: Foundation for js-waku docs -#### _achieved_: -- js-waku overview + installation guide -- lightpush + filter guide -- store guide -- @waku/create-app guide - -#### _next:_ -- improve @waku/react guide - -#### _blocker:_ -- polyfills issue with [js-waku](https://github.com/waku-org/js-waku/issues/1415) - -### **Milestone**: Docs general improvement/incorporating feedback (continuous) -### **Milestone**: Running nwaku in the cloud -### **Milestone**: Add Waku guide to learnweb3.io -### **Milestone**: Encryption docs for js-waku -### **Milestone**: Advanced node operator doc (postgres, WSS, monitoring, common config) -### **Milestone**: Foundation for go-waku docs -### **Milestone**: Foundation for rust-waku-bindings docs -### **Milestone**: Waku architecture docs -### **Milestone**: Waku detailed roadmap and milestones -### **Milestone**: Explain RLN - ---- - -## Eco Dev (WIP) - -### **Milestone**: EthCC Logos side event organisation (done) -### **Milestone**: Community Growth -#### _achieved_: -- Wrote several bounties, improved template; setup onboarding flow in Discord. - -#### _next_: -- Review template, publish on GitHub - -### **Milestone**: Business Development (continuous) -#### _achieved_: -- Discussions with various leads in EthCC -#### _next_: -- Booking calls with said leads - -### **Milestone**: Setting Up Content Strategy for Waku - -#### _achieved_: -- Discussions with Comms Hubs re Waku Blog -- expressed needs and intent around future blog post and needed amplification -- discuss strategies to onboard/involve non-dev and potential CTAs. - -### **Milestone**: Web3Conf (dates) -### **Milestone**: DeCompute conf - ---- - -## Research (WIP) - -### **Milestone**: [Autosharding v1](https://github.com/waku-org/nwaku/issues/1846) -#### _achieved:_ -- rendezvous hashing -- weighting function -- updated LIGHTPUSH to handle autosharding - -#### _next:_ -- update FILTER & STORE for autosharding - ---- - -## nwaku (WIP) - -### **Milestone**: Postgres integration. -#### _achieved:_ -- nwaku can store messages in a Postgres database -- we started to perform stress tests - -#### _next:_ -- Analyse why some messages are not stored during stress tests happened in both sqlite and Postgres, so maybe the issue isn't directly related to _store_. - -### **Milestone**: nwaku as a library (C-bindings) -#### _achieved:_ -- The integration is in progress through N-API framework - -#### _next:_ -- Make the nodejs to properly work by running the _nwaku_ node in a separate thread. - ---- - -## go-waku (WIP) - - ---- - -## js-waku (WIP) - -### **Milestone**: [Peer management](https://github.com/waku-org/js-waku/issues/914) -#### _achieved: -- spec test for connection manager - -### **Milestone**: [Peer Exchange](https://github.com/waku-org/js-waku/issues/1429) -### **Milestone**: Static Sharding -#### _next_: -- start implementation of static sharding in js-waku - -### **Milestone**: Developer Experience -#### _achieved_: -- js-lip2p upgrade to remove usage of polyfills (draft PR) - -#### _next_: -- merge and release js-libp2p upgrade - -### **Milestone**: Waku Relay in the Browser - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-07-31.md b/content/waku/updates/2023-07-31.md deleted file mode 100644 index 0e6761c76..000000000 --- a/content/waku/updates/2023-07-31.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -title: "2023-07-31 Waku weekly" -tags: - - "waku-updates" -date: "2023-07-31" -lastmod: "2023-08-04" -draft: false ---- - -## Docs - -### **Milestone**: Docs general improvement/incorporating feedback (continuous) -#### _next:_ -- rewrite docs in British English -### **Milestone**: Running nwaku in the cloud -#### _next:_ -- publish guides for Digital Ocean, Oracle, Fly.io - ---- -## Eco Dev (WIP) - ---- -## Research - -### **Milestone**: Detailed network requirements and task breakdown -#### _achieved:_ -- gathering rough network requirements -#### _next:_ -- detailed task breakdown per milestone and effort allocation - -### **Milestone**: [Autosharding v1](https://github.com/waku-org/nwaku/issues/1846) -#### _achieved:_ -- update FILTER & STORE for autosharding -#### _next:_ -- RFC review & updates -- code review & updates - ---- -## nwaku - -### **Milestone**: nwaku release process automation -#### _next_: -- setup automation to test/simulate current `master` to prevent/limit regressions -- expand target architectures and platforms for release artifacts (e.g. arm64, Win...) -### **Milestone**: HTTP Rest API for protocols -#### _next:_ -- Filter API added -- tests to complete. - ---- -## go-waku - -### **Milestone**: Increase Maintability Score. Refer to [CodeClimate report](https://codeclimate.com/github/waku-org/go-waku) -#### _next:_ -- define scope on which issues reported by CodeClimate should be fixed. Initially it should be limited to reduce code complexity and duplication. - -### **Milestone**: RLN updates, refer [issue](https://github.com/waku-org/go-waku/issues/608). -_achieved_: -- expose `set_tree`, `key_gen`, `seeded_key_gen`, `extended_seeded_keygen`, `recover_id_secret`, `set_leaf`, `init_tree_with_leaves`, `set_metadata`, `get_metadata` and `get_leaf` -- created an example on how to use RLN with go-waku -- service node can pass in index to keystore credentials and can verify proofs based on bandwidth usage -#### _next_: -- merkle tree batch operations (in progress) -- usage of persisted merkle tree db - -### **Milestone**: Improve test coverage for functional tests of all protocols. Refer to [CodeClimate report] -#### _next_: -- define scope on which code sections should be covered by tests - -### **Milestone**: C-Bindings -#### _next_: -- update API to match nwaku's (by using callbacks instead of strings that require freeing) - ---- -## js-waku - -### **Milestone**: [Peer management](https://github.com/waku-org/js-waku/issues/914) -#### _achieved_: -- extend ConnectionManager with EventEmitter and dispatch peers tagged with their discovery + make it public on the Waku interface -#### _next_: -- fallback improvement for peer connect rejection - -### **Milestone**: [Peer Exchange](https://github.com/waku-org/js-waku/issues/1429) -#### _next_: -- robusting support around peer-exchange for examples -### **Milestone**: Static Sharding -#### _achieved_: -- WIP implementation of static sharding in js-waku -#### _next_: -- investigation around gauging connection loss; - -### **Milestone**: Developer Experience -#### _achieved_: -- improve & update @waku/react -- merge and release js-libp2p upgrade - -#### _next:_ -- update examples to latest release + make sure no old/unused packages there - -### **Milestone**: Maintenance -#### _achieved_: -- update to libp2p@0.46.0 -#### _next_: -- suit of optional tests in pipeline - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-08-06.md b/content/waku/updates/2023-08-06.md deleted file mode 100644 index 2a698f177..000000000 --- a/content/waku/updates/2023-08-06.md +++ /dev/null @@ -1,120 +0,0 @@ ---- -title: "2023-08-06 Waku weekly" -tags: - - "waku-updates" -date: 2023-08-08 -lastmod: 2023-08-08 -draft: false ---- - -Milestones for current works are created and used. Next steps are: -1) Refine scope of [research work](https://github.com/waku-org/research/issues/3) for rest of the year and create matching milestones for research and waku clients -2) Review work not coming from research and setting dates -Note that format matches the Notion page but can be changed easily as it's scripted - - -## nwaku - -**[Release Process Improvements](https://github.com/waku-org/nwaku/issues/1889)** {E:2023-qa} - -- _achieved_: fixed a bug in release CI workflow, enhanced the CI workflow to build and push a docker image on each PR to make simulations per PR more feasible -- _next_: document how to run PR built images in waku-simulator, adding Linux arm64 binaries and images -- _blocker_: - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2023-10k-users} - -- _achieved_: Docker compose with `nwaku` + `postgres` + `prometheus` + `grafana` + `postgres_exporter` https://github.com/alrevuelta/nwaku-compose/pull/3 -- _next_: Carry on with stress testing - -**[Autosharding v1](https://github.com/waku-org/nwaku/issues/1846)** {E:2023-1mil-users} - -- _achieved_: feedback/update cycles for FILTER & LIGHTPUSH -- _next_: New fleet, updating ENR from live subscriptions and merging -- _blocker_: Architecturally it seams difficult to send the info to Discv5 from JSONRPC for the Waku app. - -**[Move Waku v1 and Waku-Bridge to new repos](https://github.com/waku-org/nwaku/issues/1767)** {E:2023-qa} - -- _achieved_: Removed v1 and wakubridge code from nwaku repo -- _next_: Remove references to `v2` from nwaku directory structure and documents - -**[nwaku c-bindings](https://github.com/waku-org/nwaku/issues/1332)** {E:2023-many-platforms} - -- _achieved_: - - Moved the Waku execution into a secondary working thread. Essential for NodeJs. - - Adapted the NodeJs example to use the `libwaku` with the working-thread approach. The example had been receiving relay messages during a weekend. The memory was stable without crashing. -- _next_: start applying the thread-safety recommendations https://github.com/waku-org/nwaku/issues/1878 - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:2023-many-platforms} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. -- _next_: Extend Rest Api interface for new v2 filter. Get v2 filter service supported from node. - ---- -## js-waku - -**[Peer Exchange is supported and used by default](https://github.com/waku-org/js-waku/issues/1429)** {E:2023-light-protocols} - -- _achieved_: robustness around peer-exchange, and highlight discovery vs connections for PX on the web-chat example -- _next_: saving successfully connected PX peers to local storage for easier connections on reload - -**[Waku Relay scalability in the Browser](https://github.com/waku-org/js-waku/issues/905)** {NO EPIC} - -- _achieved_: draft of direct browser-browser RTC example https://github.com/waku-org/js-waku-examples/pull/260 -- _next_: improve the example (connection re-usage), work on contentTopic based RTC example - ---- -## go-waku - -**[C-Bindings Improvement: Callbacks and Duplications](https://github.com/waku-org/go-waku/issues/629)** {E:2023-many-platforms} - -- _achieved_: updated c-bindings to use callbacks -- _next_: refactor v1 encoding functions and update RFC - -**[Improve Test Coverage](https://github.com/waku-org/go-waku/issues/620)** {E:2023-qa} - -- _achieved_: Enabled -race flag and ran all unit tests to identify data races. -- _next_: Fix issues reported by the data race detector tool - -**[RLN: Post-Testnet3 Improvements](https://github.com/waku-org/go-waku/issues/605)** {E:2023-rln} - -- _achieved_: use zerokit batch insert/delete for members, exposed function to retrieve data from merkle tree, modified zerokit and go-zerokit-rln to pass merkle tree persistance configuration settings -- _next_: resume onchain sync from persisted tree db - -**[Introduce Peer Management](https://github.com/waku-org/go-waku/issues/594)** {E:2023-peer-mgmt} - -- _achieved_: Basic peer management to ensure standard in/out ratio for relay peers. -- _next_: add service slots to peer manager - ---- -## Eco Dev - -**[Aug 2023](https://github.com/waku-org/internal-waku-outreach/issues/103)** {E:2023-eco-growth} - -- _achieved_: production of swags and marketing collaterals for web3conf completed -- _next_: web3conf talk and side event production. various calls with commshub for preparing marketing collaterals. - ---- -## Docs - -**[Advanced docs for js-waku](https://github.com/waku-org/docs.waku.org/issues/104)** {E:2023-eco-growth} - -- _next_: create guide on `@waku/react` and debugging js-waku web apps - -**[Docs general improvement/incorporating feedback (2023)](https://github.com/waku-org/docs.waku.org/issues/102)** {E:2023-eco-growth} - -- _achieved_: rewrote the docs in UK English -- _next_: update docs terms, announce js-waku docs - -**[Foundation of js-waku docs](https://github.com/waku-org/docs.waku.org/issues/101)** {E:2023-eco-growth} - -_achieved_: added guide on js-waku bootstrapping - ---- -## Research - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/research/issues/6)** {E:2023-1mil-users} - -- _achieved_: Setup project management tools; determined number of shards to 8; some conversations on RLN memberships -- _next_: Breakdown and assign tasks under each milestone for the 1 million users/public Waku Network epic. - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-08-14.md b/content/waku/updates/2023-08-14.md deleted file mode 100644 index a4238bd3c..000000000 --- a/content/waku/updates/2023-08-14.md +++ /dev/null @@ -1,103 +0,0 @@ ---- -title: "2023-08-14 Waku weekly" -tags: - - "waku-updates" -date: 2023-08-14 -lastmod: 2023-08-17 -draft: false ---- - - -# 2023-08-14 Waku weekly ---- -## Epics - -**[Waku Network Can Support 10K Users](https://github.com/waku-org/pm/issues/12)** {E:2023-10k-users} - -All software has been delivered. Pending items are: -- Running stress testing on PostgreSQL to confirm performance gain https://github.com/waku-org/nwaku/issues/1894 -- Setting up a staging fleet for Status to try static sharding -- Running simulations for Store protocol: [Will confirm with Vac/DST on dates/commitment](https://github.com/vacp2p/research/issues/191#issuecomment-1672542165) and probably move this to [1mil epic](https://github.com/waku-org/pm/issues/31) - ---- -## Eco Dev - -**[Aug 2023](https://github.com/waku-org/internal-waku-outreach/issues/103)** {E:2023-eco-growth} - -- _achieved_: web3conf talk, swags, 2 side events, twitter promotions, requested for marketing collateral to commshub -- _next_: complete waku metrics, coordinate events with Lou, ethsafari planning, muchangmai planning -- _blocker_: was blocked on infra for hosting nextjs app for waku metrics but migrating to SSR and hosting on vercel - ---- -## Docs - -**[Advanced docs for js-waku](https://github.com/waku-org/docs.waku.org/issues/104)** - -- _next_: document notes/recommendations for NodeJS, begin docs on `js-waku` encryption - ---- -## nwaku - -**[Release Process Improvements](https://github.com/waku-org/nwaku/issues/1889)** {E:2023-qa} - -- _achieved_: minor CI fixes and improvements -- _next_: document how to run PR built images in waku-simulator, adding Linux arm64 binaries and images - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2023-10k-users} - -- _achieved_: Learned that the insertion rate is constrained by the `relay` protocol. i.e. the maximum insert rate is limited by `relay` so I couldn't push the "insert" operation to a limit from a _Postgres_ point of view. For example, if 25 clients publish messages concurrently, and each client publishes 300 msgs, all the messages are correctly stored. If repeating the same operation but with 50 clients, then many messages are lost because the _relay_ protocol doesn't process all of them. -- _next_: Carry on with stress testing. Analyze the performance differences between _Postgres_ and _SQLite_ regarding the _read_ operations. - -**[Autosharding v1](https://github.com/waku-org/nwaku/issues/1846)** {E:2023-1mil-users} - -- _achieved_: many feedback/update cycles for FILTER, LIGHTPUSH, STORE & RFC -- _next_: updating ENR for live subscriptions - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:2023-many-platforms} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. -- _next_: Extend Rest Api interface for new v2 filter. Get v2 filter service supported from node. Add more tests. - ---- -## js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- achieved: upgrade libp2p & chainsafe deps to libp2p 0.46.3 while removing deprecated libp2p standalone interface packages (new breaking change libp2p w/ other deps), add tsdoc for referenced types, setting up/fixing prettier/eslint conflict - -**[Developer Experience (2023)](https://github.com/waku-org/js-waku/issues/1453)** {E:2023-eco-growth} - -- _achieved_: non blocking pipeline step (https://github.com/waku-org/js-waku/issues/1411) - -**[Peer Exchange is supported and used by default](https://github.com/waku-org/js-waku/issues/1429)** {E:2023-light-protocols} - -- _achieved_: close the "fallback mechanism for peer rejections", refactor peer-exchange compliance test -- _next_: peer-exchange to be included with default discovery, action peer-exchange browser feedback - ---- -## go-waku - -**[Maintenance](https://github.com/waku-org/go-waku/issues/634)** {E:2023-qa} - -- _achieved_: improved keep alive logic for identifying if machine is waking up; added vacuum feature to sqlite and postgresql; made migrations optional; refactored db and migration code, extracted code to generate node key to its own separate subcommand - -**[C-Bindings Improvement: Callbacks and Duplications](https://github.com/waku-org/go-waku/issues/629)** {E:2023-many-platforms} - -- _achieved_: PR for updating the RFC to use callbacks, and refactored the encoding functions - -**[Improve Test Coverage](https://github.com/waku-org/go-waku/issues/620)** {E:2023-qa} - -- _achieved_: Fixed issues reported by the data race detector tool. -- _next_: identify areas where test coverage needs improvement. - -**[RLN: Post-Testnet3 Improvements](https://github.com/waku-org/go-waku/issues/605)** {E:2023-rln} - -- _achieved_: exposed merkle tree configuration, removed embedded resources from go-zerokit-rln, fixed nwaku / go-waku rlnKeystore compatibility, added merkle tree persistence and modified zerokit to print to stderr any error obtained while executing functions via FFI. -- _next_: interop with nwaku - -**[Introduce Peer Management](https://github.com/waku-org/go-waku/issues/594)** {E:2023-peer-mgmt} - -- _achieved_: add service slots to peer manager. -- _next_: implement relay connectivity loop, integrate gossipsub scoring for peer disconnections - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-08-21.md b/content/waku/updates/2023-08-21.md deleted file mode 100644 index 4b66ef799..000000000 --- a/content/waku/updates/2023-08-21.md +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: "2023-08-21 Waku weekly" -tags: - - "waku-updates" -date: 2023-08-21 -lastmod: 2023-08-22 -draft: false ---- - -# 2023-08-21 Waku weekly ---- -## Eco Dev - -**[Aug 2023](https://github.com/waku-org/internal-waku-outreach/issues/103)** {E:2023-eco-growth} - -- *achieved:* +20% increase on twitter followers and had a discussion with digital comms team regarding improving Waku's metrics on social handles. Migration of all ecodev elements from github to notion has also been initiated. -- *next:* publish the metrics dashboard after call with Vaclav and publish draft for advocates program. Also coordinate with Lou regarding ETHRome hackathon. -- *blocker:* none - ---- -## Docs - -**[Advanced docs for js-waku](https://github.com/waku-org/docs.waku.org/issues/104)** - -- _achieved_: added guide for `js-waku` debugging and running in NodeJS - [PR111](https://github.com/waku-org/docs.waku.org/pull/111) -- _next_: `js-waku` encryption guides - ---- -## Research - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/research/issues/6)** {E:2023-1mil-users} - -- _achieved_: Breakdown and assign tasks under each milestone for the 1 million users/public Waku Network epic. -- _next_: Refine/discuss task breakdown. Start working on Waku Network RFC. - ---- -## nwaku - -**[Sharded peer management and discovery](https://github.com/waku-org/nwaku/issues/1919)** {E:2023-peer-mgmt} - -- _achieved_: discv5 ENR update & filter predicate run-time updating -- _next_: PRs feedback updates - -**[Autosharding v1](https://github.com/waku-org/nwaku/issues/1846)** {E:2023-1mil-users} - -achieved: Complete! FILTER, LIGHTPUSH and RFC merged. - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:2023-many-platforms} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. V2 implementation done wait for PR review -- _next_: Testing and add even more tests for failure cases. - ---- -## js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- _achieved_: breaking change for `@noble/secp256k1` PR in progress, redo trailing commas PR - -**[Developer Experience (2023)](https://github.com/waku-org/js-waku/issues/1453)** {E:2023-eco-growth} - -- _achieved:_ set default fallback fro `NodeRequirements` - -**[Peer Exchange is supported and used by default](https://github.com/waku-org/js-waku/issues/1429)** {E:2023-light-protocols} - -- _achieved_: peer-exchange included by default (PR opened) -- _next_: tasks breakdown and followup from dogfooding feedback - ---- -## go-waku - -**[RLN enabled by default](https://github.com/waku-org/go-waku/issues/655)** {E:2023-rln} - -- _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 - -**[Maintenance](https://github.com/waku-org/go-waku/issues/634)** {E:2023-qa} - -- _achieved_: refactored wakuv2 metrics to make each protocol responsable for registering and defining its own metrics - -**[RLN: Post-Testnet3 Improvements](https://github.com/waku-org/go-waku/issues/605)** {E:2023-rln} - - achieved: interop with nwaku. - -**[Introduce Peer Management](https://github.com/waku-org/go-waku/issues/594)** {E:2023-peer-mgmt} - -- _achieved_: implement relay connectivity loop, log reachability status reported with help of AutoNAT service, local testing using waku simulator and bug fixes -- _next_: work towards dogfooding new peer mgmt with Status - ---- diff --git a/content/waku/updates/2023-08-28.md b/content/waku/updates/2023-08-28.md deleted file mode 100644 index 3fe3bd3df..000000000 --- a/content/waku/updates/2023-08-28.md +++ /dev/null @@ -1,92 +0,0 @@ ---- -title: 2023-08-28 Waku weekly -tags: - - waku-updates -date: 2023-08-28 -lastmod: 2023-08-28 -draft: false ---- - -## 2023-08-28 Waku weekly ---- -### Epics - -**[Status MVP: Status Core Contributors use Status Mobile](https://github.com/waku-org/pm/issues/8)** {E:2023-light-protocols} - -Light push and filter protocols are available in Status Mobile and Desktop. Some light dogfooding has started. - ---- -### Research - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/research/issues/6)** {E:2023-1mil-users} - -- _achieved_: Further task refinement and assigning ownership. Visibility and traceability via GH issues. -- _next_: Start working on Waku Network RFC. - ---- -### nwaku - -**[setting up static sharding fleet for Status](https://github.com/waku-org/nwaku/issues/1914)** {E:2023-10k-users} - -- _achieved_: final infra definition, including generated keys and shards, specified in infra-status issue -- _next_: ensure fleet gets deployed as specified - -**[Release Process Improvements](https://github.com/waku-org/nwaku/issues/1889)** {E:2023-qa} - -- _achieved_: added a CI job to notify on unexpected config option or DB schema changes -- _next_: document how to run PR built images in waku-simulator, adding Linux arm64 binaries and images - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2023-10k-users} - -- _achieved_: new _docker compose_ in `test-waku-query` that allows to quickly compare `insert` and `query` performance between _SQLite_ and _Postgres_. -- _next_: Carry on with stress testing & follow-up of the _Postgres_ addition to [wakuv2.shards](https://github.com/status-im/infra-nim-waku/blob/master/ansible/group_vars/wakuv2-shards.yml) by the _infra_ team. - -**[nwaku c-bindings](https://github.com/waku-org/nwaku/issues/1332)** {E:2023-many-platforms} - -- _achieved_: Started applying _thread-safe_ recommendations, making the _Waku Node_ instance to be created within the _Waku Thread_ itself. -- _next_: Carry on with the _thread-safety_ recommendations: avoid using [Channel](https://nim-lang.org/0.20.0/channels.html) to communicate main thread and the _Waku Thread_. - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:2023-many-platforms} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. V2 implementation done wait for PR review -- _next_: Finish rebase to master, manual adapt of autoshard feature into Filter v2. - ---- -### js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- _achieved_: store protocol refactor for readability - -**[Peer Exchange is supported and used by default](https://github.com/waku-org/js-waku/issues/1429)** {E:2023-light-protocols} - -- _achieved_: break down dogfooding into tasks for peer-exchange - -**[Cover Several Environments As Part of Testing](https://github.com/waku-org/js-waku/issues/52)** {E:2023-qa} - -- _achieved_: created front-end app to be run in a pipeline -- _next_: complete app and run in the pipeline, figure out next steps to run Firefox - ---- -### go-waku - -**[RLN enabled by default](https://github.com/waku-org/go-waku/issues/655)** {E:2023-rln} - -- _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 - -**[Auto-sharding v1](https://github.com/waku-org/go-waku/issues/623)** {E:2023-1mil-users} - -- _achieved_: Implemented core logic for autosharding -- _next_: API changes for autosharding - -**[Improve Test Coverage](https://github.com/waku-org/go-waku/issues/620)** {E:2023-qa} - -- _achieved_: Improved test coverage in utils. - -**[Introduce Peer Management](https://github.com/waku-org/go-waku/issues/594)** {E:2023-peer-mgmt} - -- _achieved_: Raised PR in status-go to use this version in order to dogfood. Local testing with status desktop -- _next_: Dogfood changes with Status desktop and mobile using Waku CC's - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-09-04.md b/content/waku/updates/2023-09-04.md deleted file mode 100644 index 173d9d5f2..000000000 --- a/content/waku/updates/2023-09-04.md +++ /dev/null @@ -1,87 +0,0 @@ ---- -title: 2023-09-04 Waku weekly -tags: - - waku-updates -date: 2023-09-04 -lastmod: 2023-09-04 -draft: false ---- - -## 2023-09-04 Waku weekly ---- -### Epics - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/pm/issues/62)** {E:2023-1mil-users} - -- _achieved_: Started working on Waku Network RFC. Visibility and traceability in GH improvements. -- _next_: Continue working on Waku Network RFC. - ---- -### nwaku - -**[setting up static sharding fleet for Status](https://github.com/waku-org/nwaku/issues/1914)** {E:2023-10k-users} - -- _achieved_: negotiation with infra to improve fleet definition, clarify postgresql deployment -- _next_: ensure fleet gets deployed as specified - -**[Release Process Improvements](https://github.com/waku-org/nwaku/issues/1889)** {E:2023-qa} - -- _achieved_: minor fixes in GH action workflows, building `experimental` (i.e. RLN enabled) image per-PR to simlify RLN testing/simulations -- _next_: document how to run PR built images in waku-simulator, adding Linux arm64 binaries and images - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2023-10k-users} - -- _achieved_: Download and start configuring `jmeter` to have a variable number of clients sending concurrent _Store_ requests. -- _next_: Carry on with stress testing & follow-up of the _Postgres_ addition to [wakuv2.shards](https://github.com/status-im/infra-nim-waku/blob/master/ansible/group_vars/wakuv2-shards.yml) by the _infra_ team. - -**[nwaku c-bindings](https://github.com/waku-org/nwaku/issues/1332)** {E:2023-many-platforms} - -- _achieved_: Merged PR that made the _Waku Node_ to be created within the _Waku Thread_. Submitted a PR that aims to make a safer the communication between the main thread and the _Waku Thread_. -- _next_: Merge the PR to enhance communication between threads and start extracting the thread context outside the library (comment: https://github.com/waku-org/nwaku/pull/1865#discussion_r1282722954). - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:2023-many-platforms} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. V2 implementation done wait for PR review -- _next_: Complete Filter v2 PR foundings fixes. -- _blocking_: PR review found a design flow, need a little redesign. - ---- -### js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- _achieved_: @chainsafe/libp2p-gossipsub is updated - -**[Developer Experience (2023)](https://github.com/waku-org/js-waku/issues/1453)** {E:2023-eco-growth} - -- _achieved_: pre-emptive stream creations for light protocols, using lowest latency peers for light protocols (WIP) -- _next_: merging lowest latency peer PR - -**[Waku Relay scalability in the Browser](https://github.com/waku-org/js-waku/issues/905)** - -- _achieved_: complete PoC of Waku Relay over WebRTC using circuit relay -- _next_: pause this to prioritize Waku Network milestone - -**[Cover Several Environments As Part of Testing](https://github.com/waku-org/js-waku/issues/52)** {E:2023-qa} - -- _achieved_: finishing testing against chrome and react; -- _next_: investigate other adding browsers; - ---- -### go-waku - -**[RLN enabled by default](https://github.com/waku-org/go-waku/issues/655)** {E:2023-rln} - -- _achieved_: test keystore interop with nwaku, integrate waku rln registry, and restore valid roots from DB -- _next_: ordered validator execution, bandwidth validation, upgrade zerokit - -**[Maintenance](https://github.com/waku-org/go-waku/issues/634)** {E:2023-qa} - -- _achieved_: allow mixing named and static shards, logs succesful message pushes, concurrency fixes for filterv2 - -**[Auto-sharding v1](https://github.com/waku-org/go-waku/issues/623)** {E:2023-1mil-users} - -- _achieved_: Implemented new config for autosharding and ENR updates with shard info -- _next_: update various protocols to autoshard - ---- \ No newline at end of file diff --git a/content/waku/updates/2023-09-11.md b/content/waku/updates/2023-09-11.md deleted file mode 100644 index a44f8c3bf..000000000 --- a/content/waku/updates/2023-09-11.md +++ /dev/null @@ -1,134 +0,0 @@ ---- -title: 2023-09-11 Waku weekly -tags: - - waku-updates -date: 2023-09-11 -lastmod: 2023-09-11 -draft: false ---- - -2023-09-11 Waku weekly ---- -### Research - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/pm/issues/62)** {E:1.1 Network requirements and task breakdown} - -- _achieved:_ Opened first raw version of Waku Network RFC for review. -- _next:_ Address any feedback on the Waku Network RFC and complete under-defined sections. - ---- -### Docs - -**[Review Usage and Metrics 2023 Q3](https://github.com/waku-org/docs.waku.org/issues/107)** {E:Define network and community metrics} - -- _achieved_: published the language/SDK poll on Discord -- _next_: publish the poll on socials for more visibility and responses - -**[Docs general improvement/incorporating feedback (2023)](https://github.com/waku-org/docs.waku.org/issues/102)** - -- _next_: refactor the layout of the docs to match the new designs - ---- -### nwaku - -**[feat(rest): Add /health endpoint to rest api](https://github.com/waku-org/nwaku/issues/1988)** {E:REST API service node} - -- _achieved_: Feature /health endpoint added. PR merged: https://github.com/waku-org/nwaku/pull/2011 - -**[feat: Autosharding API for (relay) subscriptions](https://github.com/waku-org/nwaku/issues/1936)** {E:1.2: Autosharding for autoscaling} - -- _achieved_: Refactored and simplified the core logic -- _next_: More PR feedback - -**[Release Process Improvements](https://github.com/waku-org/nwaku/issues/1889)** {E:Automated release processes} - -- _achieved_: execute js-waku tests from nwaku workflows against PRs, nightly and release candidates -- _next_: adding Linux arm64 binaries and images - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2.1: Production testing of existing protocols}, {E:PostgreSQL} - -- _achieved_: - - Created a `jmeter` test plan to stress _Store_ queries through REST _Store_. As a conclusion, the node with _Store_ _Postgres_ showed worse performance than the one with _SQLite_. - https://github.com/waku-org/test-waku-query/pull/5 - - Added reconnection feature. If the connection with _Postgres_ is lost, the `nwaku` node tries to reconnect again. https://github.com/waku-org/nwaku/pull/1997 - - The `wakuv2.shards` fleet had been de-prioritized in favor of the `status.shards` one. - https://github.com/status-im/infra-nim-waku/issues/74#issuecomment-1710514544 -- _next_: Optimize database so that the _Store_ requests behave better with _Postgres_. - -**[chore: do not advertise MAs with port 0](https://github.com/waku-org/nwaku/issues/1883)** {bug} - -- _next_: analyze and fix issue - -**[feat: HTTP REST API: Filter support v2](https://github.com/waku-org/nwaku/issues/1872)** {E:REST API service node} - -- _achieved_: PR tracking is https://github.com/waku-org/nwaku/pull/1890 - Review is done, various fixes upon applied -- _next_: Last, agreed interface change to be done to complete. - -**[chore: update resolved enr ip when using `dns4-domain-name` flag](https://github.com/waku-org/nwaku/issues/1576)** {enhancement} - -- _next_: analyze and fix issue - -**[bug: `0.0.0.0` included in `listenAddrs` of identify message](https://github.com/waku-org/nwaku/issues/1427)** {bug} - -- _achieved_: fixed bug, updated tests according to new fixes and raised PR - -**[nwaku c-bindings (NodeJS + Python)](https://github.com/waku-org/nwaku/issues/1332)** {E:NodeJS Library} - -- _achieved_: improved the thread safeness communication. - https://github.com/waku-org/nwaku/pull/1978 -- _next_: Once the above PR is merged, avoid the use of global variables, to enhance the thread-safeness ( see https://github.com/waku-org/nwaku/pull/1865#discussion_r1282722954 ) - -**[HTTP REST API: Store, Filter, Lightpush, Admin and Private APIs](https://github.com/waku-org/nwaku/issues/1076)** {E:REST API service node} - -- _achieved_: Legacy Filter - v1 - interface Rest Api support added. V2 implementation done wait for PR review, /health rest api added to check (currently) RLN readiness -- _next_: Last round of Filter v2 PR review with finalized re-worked push handler part. -- _blocking_: /health endpoint come in and Filter v2 work was down prio till. - ---- -### js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- _achieved_: updated typescript + plugins to major versions, waiting to merge for release - -**[Developer Experience (2023)](https://github.com/waku-org/js-waku/issues/1453)** {E:2023-eco-growth} - -- _achieved_: - - investigation of `go-waku` interop test that is failing - ongoing, fixing next release - - protocols now use lowest latency peer instead of a random peer -- _next_: root cause `go-waku` interop test failure, release `next` tag on master merge - -**[Peer Exchange is supported and used by default](https://github.com/waku-org/js-waku/issues/1429)** {E:2023-light-protocols} - -- _achieved_: Peer Exchange is now merged included in `defaultBootstrap` -- _next_: followup on browser investigation and confirm if the EPIC can be safely closed - -**[Cover Several Environments As Part of Testing](https://github.com/waku-org/js-waku/issues/52)** {test}, {E:2023-qa} - -- _achieved_: browser testing is redone and opening for review -- _next_: integrate with release process - rather quick follow up, revisit current epic - ---- -### go-waku - -**[RLN enabled by default](https://github.com/waku-org/go-waku/issues/655)** {E:3.2: Basic DoS protection in production} - -- _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 - - rln membership registration logic refactoring and fixing bugs. Added test for membershipFetcher. Added code for mock_blockchain and mock_client to test membershipFetcher. -- _next_: bandwidth validation, rln isReady verif in /health endpoint, subcommand to list credentials - -**[Maintenance](https://github.com/waku-org/go-waku/issues/634)** {E:2023-qa} - -- _achieved_: - - fix panic observed in peer-manager, update filter protocol as per rfc. - - add tls/ws to address factory and log ENRs only after they have been setup - - refactoring and some bug fixes in peermanager and read rfcs and docs -- _next_: increase test coverage and read more code. - -**[Improve Test Coverage](https://github.com/waku-org/go-waku/issues/620)** {test} - -- _achieved_: build examples as part of CI to capture compile errors - ---- diff --git a/content/waku/updates/2023-09-18.md b/content/waku/updates/2023-09-18.md deleted file mode 100644 index 8e5a78495..000000000 --- a/content/waku/updates/2023-09-18.md +++ /dev/null @@ -1,113 +0,0 @@ ---- -title: 2023-09-18 Waku weekly -tags: - - waku-updates -date: 2023-09-18 -lastmod: 2023-09-19 -draft: false ---- - -2023-09-18 Waku weekly - ---- -### Epics - -**[1.1 Network requirements and task breakdown](https://github.com/waku-org/pm/issues/62)** {E:1.1 Network requirements and task breakdown} - -- _achieved_: Further specifications added for RLN. Merged and published first version of RFC -- _next_: Define first launchable (sub)network for Devconnect. - ---- -### Docs - -**[Advanced docs for js-waku](https://github.com/waku-org/docs.waku.org/issues/104)** - -- _achieved_: added guide for local development with nwaku - -**[Node operator doc - cloud and advanced options](https://github.com/waku-org/docs.waku.org/issues/103)** - -- _achieved_: added guide on advanced nwaku and WebSocket configurations -- _next_: add guide for enabling node monitoring - ---- -### Research - -**[RLN Key Benchmarks](https://github.com/waku-org/research/issues/23)** {E:3.2: Basic DoS protection in production} - -* *achieved*: benchmark rln, see issue with report. - ---- -### nwaku - -**[feat: HTTP REST API: lightpush ](https://github.com/waku-org/nwaku/issues/2040)** {E:REST API service node} - -- _achieved_: -- _next_: LightPush REST endpoint will be implemented fully and put on PR review -- _blocking_: - -**[bug: wrong user_version in sqlite database that blocks the run of a Waku node](https://github.com/waku-org/nwaku/issues/2027)** {bug} - -- _achieved_: bug fix that prevented a _Store_ `nwaku` to start if the _SQLite_ db was created with versions [0.14.0 - 0.18.0] - -**[feat: Autosharding API for (relay) subscriptions](https://github.com/waku-org/nwaku/issues/1936)** {E:1.2: Autosharding for autoscaling} - -- _achieved_: many PR fixes, -- _blocker_: explicit subscriptions in js-waku tests - -**[chore(rln-relay): Requirements to consider RLN ready (non experimental)](https://github.com/waku-org/nwaku/issues/1906)** {E:3.1: DoS requirements and design} - -* *achieved*: waku rln is not an experimental feature anymore, and is part of nwaku code base. from now on experimental features are hidden behind a flag and not in different build - -**[chore: do not advertise multiaddr with port 0](https://github.com/waku-org/nwaku/issues/1883)** {bug} - -- _achieved_: tested two different solutions: updating the port with an addressMapper, and not allowing the user to use port 0. Analyzed and discussed technical implications of both solutions. Initially followed decision to proceed with 2nd solution for now, with intention of implementing the first solution in the future. - - Opened a draft PR and updated tests for the solution of not allowing the user to choose port 0. -- _next_: after further feedback received today, we have to complete the discussion of how to move forward and either review and proceed with current PR, or plan and implement solution that updates all the data structures consistently across the node - -**[feat: HTTP REST API: Filter support v2](https://github.com/waku-org/nwaku/issues/1872)** {E:REST API service node} - -- _achieved_: Filter v1 & v2 REST API endpoints merged to master -- _next_: LightPush REST endpoint - -**[chore: update resolved enr ip when using `dns4-domain-name` flag](https://github.com/waku-org/nwaku/issues/1576)** {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. - ---- -### js-waku - -**[Maintenance](https://github.com/waku-org/js-waku/issues/1455)** {E:2023-qa} - -- _achieved_: added logs, investigated issues reported -- _next_: approach reported issues, add preventative measures - -**[Cover Several Environments As Part of Testing](https://github.com/waku-org/js-waku/issues/52)** {test}, {E:2023-qa} - -- _achieved_: got reviews on playwrights tests -- _next_: maybe add bounty, check Karma testing - ---- -### go-waku - -**[feat: discovery & peer management for static shards](https://github.com/waku-org/go-waku/issues/727)** {E:1.4: Sharded peer management and discovery} - -- _achieved_: Update WakuPeerStore to store pubSubTopics for a peer. -- _next_: Sharded Peer Management considering static sharding for Status communities. - -**[RLN enabled by default](https://github.com/waku-org/go-waku/issues/655)** {E:3.2: Basic DoS protection in production} - -- _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 - -**[Maintenance](https://github.com/waku-org/go-waku/issues/634)** {E:2023-qa} - -- _achieved_: CommonService for embedding lifecycle operation in lightpush,discv5,filter,peerConnector etc. -- _next_: after discussion with richard prem, use create 2 different types of commonService. Change nameServer flag functionality in go-waku to nwaku. And work on newly created tasks. - -**[Improve Test Coverage](https://github.com/waku-org/go-waku/issues/620)** {test} - -- _achieved_: replace golint by revive, and add `make lint-full` target to run linting with many more rules enabled - ---- diff --git a/content/waku/updates/2023-09-25.md b/content/waku/updates/2023-09-25.md deleted file mode 100644 index 1773a5710..000000000 --- a/content/waku/updates/2023-09-25.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: 2023-09-25 Waku weekly -tags: - - waku-updates -date: 2023-09-25 -lastmod: 2023-09-26 -draft: false ---- - -### nwaku - -**[feat: RLN support for Nwaku-Compose](https://github.com/waku-org/nwaku/issues/2051)** {E:3.2: Basic DoS protection in production} - -- _achieved_: added RLN flags `run_node.sh` (including the optional ones), added RLN related environment variables to `docker-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](https://github.com/waku-org/nwaku/issues/2041)** {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 ](https://github.com/waku-org/nwaku/issues/2040)** {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](https://github.com/waku-org/nwaku/issues/1941)** {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](https://github.com/waku-org/nwaku/issues/1936)** {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](https://github.com/waku-org/nwaku/issues/1576)** {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](https://github.com/waku-org/nwaku/issues/1576)** {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)](https://github.com/waku-org/nwaku/issues/1332)** {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](https://github.com/waku-org/js-waku/issues/1429)** {E:2.1: Production testing of existing protocols} - -- _achieved_: The Peer Exchange Epic is now completed & closed - -**[Cover Several Environments As Part of Testing](https://github.com/waku-org/js-waku/issues/52)** {test}, {E:Comprehensive dev testing} - -- _achieved_: improved karma testing, added testing in browser - ---- -### go-waku - -**[feat: discovery & peer management for static shards](https://github.com/waku-org/go-waku/issues/727)** {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](https://github.com/waku-org/go-waku/issues/673)** {E:1.2: Autosharding for autoscaling} - -- _achieved_: Completed Filter API and lightClient changes for autosharding - -**[Add postgresql to the unit tests](https://github.com/waku-org/go-waku/issues/607)** {test} - -- _achieved_: Add test for store query creation functionality, and change store test to use postgres. Add tests for postgres module. - ---- diff --git a/content/waku/updates/2023-10-02.md b/content/waku/updates/2023-10-02.md deleted file mode 100644 index cd6fbf407..000000000 --- a/content/waku/updates/2023-10-02.md +++ /dev/null @@ -1,195 +0,0 @@ ---- -title: 2023-10-03 Waku Weekly -tags: - - waku-updates -date: 2023-10-02 -lastmod: 2023-10-05 -draft: false ---- -### waku-rust-bindings - - - -**[feat: filterv2 support](https://github.com/waku-org/waku-rust-bindings/issues/71)** {E:RLN non-native SDKs} - - - -- _achieved_: added support for `unsubscribe`, `ping` and `unsubscribe_all` filterv2 functions of go-waku c-bindings - -- _next_: add support to `subscribe` - - - ---- - -### nwaku - - - -**[feat: Implement /admin Rest Api endpoint](https://github.com/waku-org/nwaku/issues/2075)** - - - -- _achieved_: - -- _next_: /admin rest endpoint feature is on PR review will be merged next week. Restructure openapi descriptions and producing swagger ui like live document of all rest interfaces. - -- _blocking_: There are two build issues. libwaku cannot build on Fedora (RedHat) distros. Second, Abhi reported a build issue with wakunode2 - nim compiler crash under some circumstances. - - - -**[feat: RLN support for Nwaku-Compose](https://github.com/waku-org/nwaku/issues/2051)** {E:3.2: Basic DoS protection in production} - - - -- _achieved_: finished addressing feedback - -- _next_: task is blocked until there's an easier method for users to register RLN credentials - - - -**[feat: Service peer selection on specific shards](https://github.com/waku-org/nwaku/issues/1941)** {E:1.4: Sharded peer management and discovery} - - - -- _achieved_: newly refactored STORE REST API handler that trigger discv5 peer search when needed. - -- _next_: refactor other APIs - - - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2.1: Production testing of existing protocols}, {E:PostgreSQL} - - - -- _achieved_: - -- Better `dburl` parse that accepts host names with dashes and dots. - -- Properly set the compilation flag `-d:postgres` so _Docker_ images are compiled with support to _Postgres_ (with `libpq5` dependency.) - -- During the stress testing, I discovered that the max throughput seems not to be directly related to _Postgres_. If I make the code to ignore _Postgres_ and return immediately a mocked response, then the throughput is even lower. - -- _next_: Carry on with "select" performance analysis and analyze it directly from a _Store_ client, rather than having `REST` <-> `Store_Client` <-> `Store_Server`. By ignoring the `REST` layer we will have a better insight into the actual _Store_ protocol, as @jm-clius recommended to me some time ago. - - - -**[chore: add retention policy with GB or MB limitation](https://github.com/waku-org/nwaku/issues/1885)** {enhancement}, {E:PostgreSQL} - - - -Added the new retention policy based on DB size. - -Users can provide the size such as <size_number><case_insenstive_gb_or_mb> ex. 30gb (which is also the default) - -`--store-message-retention-policy=size:25GB` - -`--store-message-retention-policy=size:25gb` - -`--store-message-retention-policy=size:250MB` - -`--store-message-retention-policy=size:250mb` - -Test case also added. - -Outdated messages/rows are deleted to suffice the size limit, with 20% size reduction upon overflowing. - - - -**[chore: update resolved enr ip when using `dns4-domain-name` flag](https://github.com/waku-org/nwaku/issues/1576)** {enhancement} - - - -- _achieved_: addressed feedback and merged - - - -**[chore: improve test coverage on NetConfig generation](https://github.com/waku-org/nwaku/issues/1540)** - - - -- _achieved_: developed the new NetConfig test suite, raised PR, received and implemented feedback and merged. - - - -**[nwaku c-bindings (NodeJS + Python)](https://github.com/waku-org/nwaku/issues/1332)** {E:NodeJS Library} - - - -- _achieved_: - -- Added a simple cpp example to the main code. https://github.com/waku-org/nwaku/pull/2079. - -- Submitted a PR where we start showing the doability of a Rust integration with the `libwaku`. - -This PR is currently introducing the thread-safety enhancement of avoiding using global variables. Ideally, this should be in a separate PR. https://github.com/waku-org/nwaku/pull/2089. - -Notice that it was important to invest time in the Rust example so that we can carry on with the "callback" technique to exchange information between the host code (any) and the foreign code (Nim.) - -- _next_: Separate the PR mentioned above and submit another one which only avoids using global variables but doesn't add the wip-Rust integration. - - - ---- - -### js-waku - - - -**[Static Sharding](https://github.com/waku-org/js-waku/issues/1310)** {E:Static sharding} - - - -- _achieved_: allowing for multiple pubsub topics to be configured & refactoring protocols to support - -- _next_: enabling peer management to only dial relevant shards - - - ---- - -### go-waku - - - -**[refactor: add user_data to c-bindings](https://github.com/waku-org/go-waku/issues/788)** {E:RLN non-native SDKs} - - - -- _achieved_: updated all the functions to include an additional `void* user_data` parameter - - - -**[feat: discovery & peer management for static shards](https://github.com/waku-org/go-waku/issues/727)** {E:1.4: Sharded peer management and discovery} - - - -- _achieved_: basic relay peer mgmt for static/auto sharding - - - -**[feat: Service peer selection on specific shards](https://github.com/waku-org/go-waku/issues/680)** {E:1.4: Sharded peer management and discovery} - - - -- _achieved_: Peer selection updated to be based on pubsubTopic or contentTopic - -- _next_: Update lightClient API to consider new peerSelection options - - - -**[feat: Autosharding API for req-resp protocols](https://github.com/waku-org/go-waku/issues/673)** {E:1.2: Autosharding for autoscaling} - - - -- _achieved_: Updated lightpush API for autosharding - - - ---- - -### EcoDev - -[October 2023](https://github.com/waku-org/internal-waku-outreach/issues/109) - -- ETHSafari bound and was mostly travelling last week \ No newline at end of file diff --git a/content/waku/updates/2023-10-09.md b/content/waku/updates/2023-10-09.md deleted file mode 100644 index f4b0e5b92..000000000 --- a/content/waku/updates/2023-10-09.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: 2023-10-09 Waku Weekly -tags: - - waku-updates -date: 2023-10-09 -lastmod: 2023-10-09 -draft: false ---- ---- -### nwaku - -**[feat: Implement /admin Rest Api endpoint](https://github.com/waku-org/nwaku/issues/2075)** {E:REST API service node} - -- _achieved_: /admin Rest API endpoint implemented -- _next_: Restructure openapi descriptions and producing swagger ui like live document of all rest interfaces. Restructure Rest API schema types. - -**[chore: notify user if docker-compose fails](https://github.com/waku-org/nwaku/issues/2064)** {enhancement}, {E:3.2: Basic DoS protection in production} - -- _achieved_: discussed the issue with colleagues, implemented the solution and closed the issue - -**[feat: allowing users to choose port 0 for dynamically allocated ports](https://github.com/waku-org/nwaku/issues/2042)** {enhancement} - -- _achieved_: analyzed code and found the different data structures affected by the dynamic port allocation. Considered the implications of different approaches to solve the issue, discussed and translated the different options into code. - Started the implementation of the chosen solution, with part of the solution already working. -- _next_: complete the first working version of the solution, improve its design/architecture, and test. - -**[feat: Service peer selection on specific shards](https://github.com/waku-org/nwaku/issues/1941)** {E:1.4: Sharded peer management and discovery} - -- _achieved_: Filter, Store, Light push REST APIs discovery handler (a rework of the previous solution) - -**[setting up static sharding fleet for Status](https://github.com/waku-org/nwaku/issues/1914)** {E:Static sharding} - -- _achieved_: fleet has been deployed, PostgreSQL setup has been tested. -- _next_: Do some basic dogfooding with Status Desktop. - -**[PostgreSQL](https://github.com/waku-org/nwaku/issues/1888)** {E:2.1: Production testing of existing protocols}, {E:PostgreSQL} - -- _achieved_: Applied performance comparison between _SQLite_ and _Postgres_ but in this case, making direct requests from a `go-waku` unittest that @richard-ramos had prepared. - After directly comparing the _Store_ protocol, noticed that the bottle neck is within the database itself. i.e. the _SQLite_ database performs better than _Postgres_, given that we have a very simple schema and simple queries, without joins. Adding indexes to the _Postgres_ database didn't help very much. For example, given the same query, _SQLite_ takes 1ms whereas _Postgres_ takes 6ms. -- _next_: - - Wrap up the _Store_ testing environment and install it into our sandbox machine, `metal-01.he-eu-hel1.wakudev.misc.statusim.net`, so that anyone can proceed from this point (two databases with the same dataset of ~2 million rows .) in case someone is keen on analyzing performance or debug in a more realistic testing scenery. This will include concurrent queries from multiple nodes, where PostgreSQL is expected to perform better. - - Start extracting the database creation and indexes creation to outside the code base. - -**[chore: add retention policy with GB or MB limitation](https://github.com/waku-org/nwaku/issues/1885)** {enhancement}, {E:PostgreSQL} - -In review: the database bug to delete limited messages/rows -Upcoming/working: updated retention policy + test + missing tes on timestamp based retention policy -Undergoing: MUID concept on message level - -**[feat: provide a way to define advertised addresses](https://github.com/waku-org/nwaku/issues/1797)** {enhancement} - -- _achieved_: went over the code and found the root cause of the issue and a preliminary solution -- _next_: finish discussing the approach to the solution and implement it - ---- -### js-waku - -**[Static Sharding](https://github.com/waku-org/js-waku/issues/1310)** {E:Static sharding} - -- _achieved_: PR open for allowing peer management for multiple pubsub topics/shard -- _next_: getting reviews & releasing - -**[Peer Management: Connection and Disconnection](https://github.com/waku-org/js-waku/issues/914)** {track:restricted-run}, {E:2.1: Production testing of existing protocols} - -- _achieved_: investigated & closed #1412 -- _next_: look into addressing deliberate vs accidental disconnections - ---- -### go-waku - -- Team attended EthRome diff --git a/content/waku/updates/2023-10-16.md b/content/waku/updates/2023-10-16.md deleted file mode 100644 index 19840a3e2..000000000 --- a/content/waku/updates/2023-10-16.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: 2023-10-16 Waku weekly -tags: - - waku-updates -date: 2023-10-16 -lastmod: 2023-10-16 -draft: ---- - -### nwaku - -**[chore: Reorganize RestApi specs for live documentation](https://github.com/waku-org/nwaku/issues/2120)** {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](https://github.com/waku-org/nwaku/issues/2042)** {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](https://github.com/waku-org/nwaku/issues/1961)** {E:Basic service incentivization} - -- _achieved_: wrote the [first draft of incentivization outline](https://github.com/waku-org/research/pull/33) -- _next_: discuss open question, continue structuring the document - -**[setting up static sharding fleet for Status](https://github.com/waku-org/nwaku/issues/1914)** {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](https://github.com/waku-org/nwaku/issues/1888)** {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. -- _next_: Carry on with the investigation to enhance the _Postgres_ performance. - -**[feat: provide a way to define advertised addresses](https://github.com/waku-org/nwaku/issues/1797)** {enhancement} - -- _achieved_: implemented solution and raised PR -- _next_: get feedback, implement suggested improvements and close - -**[nwaku c-bindings (NodeJS + Python)](https://github.com/waku-org/nwaku/issues/1332)** {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](https://github.com/waku-org/js-waku/issues/914)** {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](https://github.com/waku-org/go-waku/issues/680)** {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](https://github.com/waku-org/go-waku/issues/607)** {test} - -- _achieved_: Completed. Fixed only sqlite being used for creating queries. diff --git a/content/waku/updates/2023-10-23.md b/content/waku/updates/2023-10-23.md deleted file mode 100644 index 7a1833530..000000000 --- a/content/waku/updates/2023-10-23.md +++ /dev/null @@ -1,138 +0,0 @@ ---- -title: 2023-10-23 Waku weekly -tags: - - waku-updates -date: 2023-10-23 -draft: ---- - -# 2023-10-23 Waku weekly - -## [Waku Network Can Support 10K Users](https://github.com/waku-org/pm/issues/12) - - -- _achieved_: - - Vac/DST team has done further runs with up to 600 nodes in the network as part of wrapping up a [blog post report](https://github.com/vacp2p/vac.dev/pull/123). - - Staging fleet for Status with static sharding and PostgreSQL deployed and being tested by go-waku team using local changes in Status Desktop. -- _next_: - - Dogfooding of Status Desktop with Status staging fleet. Will aim to create a small internal Waku community. - - Continue integration of static sharding in status-go. -- _risks_: - - Dependency on Vac/DST to conclude ~1k nodes simulations. - - PostgreSQL implementation has not yet been proven more performant than SQLite. Further improvements and testing in progress. - - Implementation of static sharding in Status Communities and design decisions mostly driven by go-waku developer, with minimal input from Status dev ([1](https://github.com/status-im/status-go/pull/4161), [2](https://github.com/status-im/status-go/pull/4094), [3](https://github.com/status-im/status-go/pull/4093)). See [status-go#4057](https://github.com/status-im/status-go/issues/4057) for remaining work. Mitigation by on-boarding Chat SDK lead on 6 Nov to drive effort. - -### [Targeted dogfooding for Status Communities](https://github.com/waku-org/pm/issues/97) - - -- _achieved_: hardcoded bootnodes ENRs in addition to DNS Discovery URLs as a way to overcome nameserver issues. Use a static shard instead of the default pubsub topic. Update tool to crawl and discover nodes via discv5. -- _next_: fix if necessary strange behavior with discv5 when ENRs in DNS discovery URL do not contain shards. Document steps for dogfooding. - -## [Waku Network can Support 1 Million Users](https://github.com/waku-org/pm/issues/83) - 2023-11-30 - - -- _achieved_: See 10k milestone update for PostgreSQL status. -- _risks_: - - Dependency on Vac/DST to run 10k nodes simulations. Tracked under - [`vac:dst:eng-10ktool`](https://roadmap.logos.co/tags/vac-updates). - - Wakutorsis tool is being dropped, meaning new tooling needs to be developed for 10k nodes simulations. It is currently uncertain whether such tool can be developed. - - Large scale simulations done by Vac/DST only covered nwaku relay. go-waku, status-go simulations are not planned short term (theoretical review of Status Communities messages is), nor are simulations including request-response protocols such as store and filter. - -## [Waku Network Gen 0](https://github.com/waku-org/pm/issues/50) - 2023-12-01 - - -- _achieved_: - - Critical path work for autosharding done in nwaku, in progress on go-waku - - Parameters for the Waku Network Gen 0 have been captured in an [RFC](https://rfc.vac.dev/spec/64/) and use as a basis for [simulations](https://github.com/waku-org/research/issues/23) and [theoretical analysis](https://github.com/waku-org/research/issues/31), removing uncertainty on this milestone around message rates, performance and expected bandwidth usage. -- _risks_: - - Usage of RLN in js-waku and dependency on a (centralized?) Web3Provider remains unclear as one needs to know the merkle tree state (on chain) to generate proofs. - - We are progressively moving a nwaku engineer to a solution engineer role we need to backfill the role. - - js-waku team is juggling between dev ex and gen 0 with only 2 engineers (3rd one joining at end of Oct) so delivery in this client is likely to lag behind other clients. - -### [3.2: Basic DoS protection in production](https://github.com/waku-org/pm/issues/70) - -**[js-waku] [Task: Manage RLN membership(s) and keys](https://github.com/waku-org/js-waku/issues/1600)** - -- _achieved_: completed flow up items and main stream of work; - -**[js-waku-examples] [feat: re-create rln-js](https://github.com/waku-org/js-waku-examples/issues/279)** - -- _achieved_: experimented with different frameworks, almost complete rewriting the example; - -**[research] [Message propagation times with waku-rln](https://github.com/waku-org/research/issues/42)** - -- _achieved_: Ran simulations with 1000 nwaku nodes with rln enabled, with the goal of measuring message propagation delays under different conditions. -- _next_: Some issues with the current simulations, need to investigate shadow tool to simulate CPU "time passing". Some results are not valid. - -### [2.1: Production testing of existing protocols](https://github.com/waku-org/pm/issues/49) - -**[js-waku] [chore: improve logging when fails to connect to a node](https://github.com/waku-org/js-waku/issues/1408)** - -- _achieved_: setup a Logger for more verbose and modular error readbility - -**[js-waku] [Peer Management: Connection and Disconnection](https://github.com/waku-org/js-waku/issues/914)** - -- _achieved_: The Connection and Disconnection Peer Management epic has been closed - -**[waku-rust-bindings] [feat: filterv2 support](https://github.com/waku-org/waku-rust-bindings/issues/71)** - -- _achieved_: added support to waku_filter_subscribe -- _next_: write unit tests for filterv2 and publish new version - -## [Quality Assurance processes are in place](https://github.com/waku-org/pm/issues/73) - 2024-03-31 - - -This work is tracked with [vac:dst:software-testingwaku](https://roadmap.logos.co/vac/dst/#software-testingwaku) - -## [Support Many Platforms](https://github.com/waku-org/pm/issues/42) - 2024-04-30 - -### [Ship RLN as part of non-native SDKs](https://github.com/waku-org/pm/issues/88) - -**[go-waku] [refactor: add user_data to c-bindings](https://github.com/waku-org/go-waku/issues/788)** - -- _achieved_: exposed filterv2 subscription details (useful for rust bindings) - -### [REST API service node](https://github.com/waku-org/pm/issues/82) - -**[nwaku] [chore: reorganize rest-api types](https://github.com/waku-org/nwaku/issues/2121)** - -- _achieved_: Enhancements on Rest request error handling. -- _next_: Finalize api spec and doc after PR review. Work in progress: rest api type reorganization. RFC changes to enhance light-push failure response. -- _blocking_: Fixing found issues during release. - -**[go-waku] [feat: lightpush REST API](https://github.com/waku-org/go-waku/issues/813)** - -- _achieved_: Add lightpush rest api and test. Rest Filter v2 in progress. - -## Other Work - -### Enhancements - -**[nwaku] [feat: allowing users to choose port 0 for dynamically allocated ports](https://github.com/waku-org/nwaku/issues/2042)** - -- _achieved_: fixed failed tests, added a test case to cover the changes, small refactor and raised PR -- _next_: get PR reviewed and implement feedback - -**[nwaku] [feat: provide a way to define advertised addresses](https://github.com/waku-org/nwaku/issues/1797)** - -- _achieved_: merged PR with initial fix. Implemented and raised PR for the `--ext-multiaddr-only` CLI flag -- _next_: get PR reviewed, implement feedback and merge - -### Bugs - -**[nwaku] [bug: WSS enabled node stops accepting websocket connections after some time](https://github.com/waku-org/nwaku/issues/2140)** - -- _achieved_: discovered and debuged WSS issue, discovered and debugged REST API causing SIGSEGV, oversaw release v0.21.0 -- _next_: help with release v0.21.1, investigate existing bandwith management work - -## Ecosystem Development - Docs - -- _achieved_: - - got familiar with what The Graph is doing with Waku, @waku/sdk update in @waku/react - - Preparation to Polygon Enugu - - Peer management disconnection docs -- _next_: - - Work on metrics dashboard - - Record some explainer videos - - Docs redesign - - Outline for encryption docs diff --git a/package-lock.json b/package-lock.json index 9aca71d19..e4208c49b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -85,7 +85,8 @@ "typescript": "^5.0.4" }, "engines": { - "node": ">=18.14" + "node": ">=18.14", + "npm": ">=9.3.1" } }, "node_modules/@clack/core": {