mirror of
https://github.com/vacp2p/roadmap.git
synced 2026-01-10 08:08:06 -05:00
ACZ Q3 commitments (#185)
This commit is contained in:
@@ -39,12 +39,14 @@ that show the potential improvement points of the discovery mechanism.
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-discovery-exploration:exploring`
|
||||
* owner: Ugur
|
||||
* status: not started
|
||||
* status: on-hold
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
This task is moved to the 2025q3 due to the priority changes.
|
||||
|
||||
This task involves researching and evaluating peer-to-peer (P2P) discovery mechanisms,
|
||||
specifically Kademlia DHT and DiscV5.
|
||||
The objective is to uncover promising research directions and assess the protocols’
|
||||
|
||||
123
content/acz/ift/2025q3-de-mls-testnet.md
Normal file
123
content/acz/ift/2025q3-de-mls-testnet.md
Normal file
@@ -0,0 +1,123 @@
|
||||
---
|
||||
|
||||
title: de-MLS testnet
|
||||
tags:
|
||||
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Implement and integrate with the multi-steward support."
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-de-mls-testnet`
|
||||
|
||||
## Description
|
||||
|
||||
This commitment involves integrating the multi-steward configurations
|
||||
to the codebase and refine its RFC with the latest findings.
|
||||
Finally, systematically prepare the architecture for testnet and load testing.
|
||||
The process includes presenting the findings, such as MLS over Waku and benchmarking,
|
||||
then, applying for the EF grant.
|
||||
|
||||
### Background
|
||||
|
||||
de-MLS is a decentralized, scalable, end-to-end encrypted (E2EE) group messaging application
|
||||
with Ethereum-based authentication.
|
||||
The primary goal of this project is to develop a comprehensive and mature RFC that outlines decentralized,
|
||||
secure, and scalable group key generation, designed to accommodate large numbers of users within a single group.
|
||||
|
||||
During 2025q2, we released the de-MLS RFC, including the seperate consensus RFC and
|
||||
mocked consensus integrated base functionality poc implementation with the single steward.
|
||||
|
||||
### Narratives
|
||||
|
||||
We will reinforce the Conduit of Expertise narrative by:
|
||||
|
||||
- Develop the foundational framework for a decentralized, scalable messaging application
|
||||
- Research and implement a scalable and decentralized consensus mechanism.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
|
||||
- Develop a standardized decentralized messaging application over the Waku network,
|
||||
by providing a well-structured RFC and a proof of concept (PoC) that demonstrates
|
||||
its base functionality within the ecosystem.
|
||||
This will allow teams and organizations to build their own messaging applications
|
||||
while benefiting from these features.
|
||||
- Create a proposal for the Ethereum Foundation (EF) to apply for EF grants
|
||||
to promote the project and gain support from the Ethereum ecosystem.
|
||||
|
||||
## Task List
|
||||
|
||||
### Maintain de-MLS RFC with multi stewards
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-de-mls-tesnet:multi-steward-rfc`
|
||||
* owner: Ugur
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Maintain and develop the decetnralized MLS RFC with adressing feedbacks.
|
||||
The RFC needs to contain concrete flow, and explaination.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* PR to vacp2p/rfc-index repo with related updates.
|
||||
|
||||
### Implement consesus layer
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-de-mls-tesnet:consensus-layer`
|
||||
* owner: Ekaterina
|
||||
* status: started (10%)
|
||||
* start-date: 2025/06/25
|
||||
* end-date: 2025/07/13
|
||||
|
||||
#### Description
|
||||
|
||||
Implement a consensus mechanism for one steward based on RFC, i.e.
|
||||
in the end we want to see a separate module
|
||||
that will process all incoming proposals for group state changes
|
||||
and receive a commit message as an output.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing new consensus layer as separate module with tests.
|
||||
|
||||
### Multi-steward integration
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-de-mls-tesnet:multi-steward-imp`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date: 2025/08/01
|
||||
* end-date: 2025/09/30
|
||||
|
||||
#### Description
|
||||
|
||||
The multi-steward settings allows de-MLS that multiple steward manages the group
|
||||
changes to protect single point of failure, better availability and decentralization.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing update of message processing
|
||||
|
||||
### de-mls maintance
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-de-mls-tesnet:de-mls-maintaining`
|
||||
* owner: Ekaterina
|
||||
* status: started
|
||||
* start-date: 2025/06/30
|
||||
* end-date: 2025/09/30
|
||||
|
||||
#### Description
|
||||
|
||||
This task encompasses all maintenance updates for de-mls, including CI updates,
|
||||
testing, small issues and the creation of future issues.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A set of PRs and issues to [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
55
content/acz/ift/2025q3-discovery.md
Normal file
55
content/acz/ift/2025q3-discovery.md
Normal file
@@ -0,0 +1,55 @@
|
||||
---
|
||||
title: Discovery exploration
|
||||
tags:
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Exploring Kademlia DHT and Discv5 to identify promising research directions"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-discovery-exploration`
|
||||
|
||||
Exploring Kademlia DHT and Discv5 to identify promising research directions
|
||||
## Description
|
||||
This commitment entails exploring discovery mechanisms such as
|
||||
[Kademlia DHT](https://en.wikipedia.org/wiki/Kademlia) and [DiscV5](https://github.com/ethereum/devp2p/blob/master/discv5/discv5.md)
|
||||
for peer-to-peer (P2P) networks, with a focus on identifying areas for improvement in latency,
|
||||
the anonymity-discoverability tradeoff, security, and scalability.
|
||||
We aim to explore these protocols not only to evaluate their current performance
|
||||
but also to identify promising research directions—particularly in enhancing anonymity within DHTs,
|
||||
improving the efficiency of peer discovery, and assessing the overall capabilities and limitations of these approaches.
|
||||
Additionally, the exploration includes assessing their suitability for IFT projects.
|
||||
|
||||
### Narratives
|
||||
|
||||
By utilizing discovery exploration commitment,
|
||||
we will reinforce the Conduit of Expertise narrative by:
|
||||
* Providing know-how about latest improvements on discovery mechanisms
|
||||
that will be tailored for many IFT teams such as Waku, Nomos, and Codex.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
* Offers open source information such as blogposts and forum posts
|
||||
that show the potential improvement points of the discovery mechanism.
|
||||
|
||||
## Task List
|
||||
|
||||
### Exploring Discovery
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-discovery-exploration:exploring`
|
||||
* owner: Ugur
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
This task involves researching and evaluating peer-to-peer (P2P) discovery mechanisms,
|
||||
specifically Kademlia DHT and DiscV5.
|
||||
The objective is to uncover promising research directions and assess the protocols’
|
||||
suitability for IFT projects, with documented findings
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A document contains promising research directions.
|
||||
83
content/acz/ift/2025q3-ift-zk-calls.md
Normal file
83
content/acz/ift/2025q3-ift-zk-calls.md
Normal file
@@ -0,0 +1,83 @@
|
||||
---
|
||||
title: IFT ZK Calls
|
||||
tags:
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Preparation and conducting the ZK call meetings"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-ift-zk-calls`
|
||||
|
||||
Preparation and conducting the ZK call meetings
|
||||
## Description
|
||||
|
||||
This commitment involves the preparation and facilitation of three ZK call meetings,
|
||||
referred to as the IFT ZK calls.
|
||||
|
||||
### Background
|
||||
|
||||
These meetings will be conducted with the participation
|
||||
of all individuals involved with ZK within IFT.
|
||||
Topics are chosen from the latest improvements from literature
|
||||
and the IFT.
|
||||
|
||||
### Narratives
|
||||
|
||||
With this commitment,
|
||||
|
||||
|
||||
we will reinforce the Conduit of Expertise narrative by:
|
||||
* Sync the monthly ZK improvements with all shares in IFT.
|
||||
* Checking there is no collision between the ZK related works.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
* Record then share the outputs of the meetings publicly.
|
||||
|
||||
## Task List
|
||||
|
||||
### IFT ZK Call 1
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-ift-zk-calls:ift-zk-call-1`
|
||||
* owner: Marvin
|
||||
* status: not started
|
||||
* start-date: 2025/07/01
|
||||
* end-date: 2025/07/07
|
||||
|
||||
#### Description
|
||||
|
||||
Preparing the agenda and possible speakers for the ZK call on 1st July.
|
||||
|
||||
#### Deliverables
|
||||
A document of a summary of the ZK call 3 meeting to [ZK Notion page](https://www.notion.so/Past-Meeting-Notes-1198f96fb65c80e6a51afa9a507aa64e?pvs=4#1748f96fb65c80048162ca3202a94ba3).
|
||||
A recorded video.
|
||||
|
||||
### IFT ZK Call 2
|
||||
* fully qualified name: `vac:acz:ift:2025q3-ift-zk-calls:ift-zk-call-2`
|
||||
* owner: Marvin
|
||||
* status: not started
|
||||
* start-date: 2025/07/27
|
||||
* end-date: 2025/08/12
|
||||
|
||||
#### Description
|
||||
Preparing the agenda and possible speakers for the ZK call on 6th August.
|
||||
|
||||
#### Deliverables
|
||||
A document of a summary of the ZK call 3 meeting to [ZK Notion page](https://www.notion.so/Past-Meeting-Notes-1198f96fb65c80e6a51afa9a507aa64e?pvs=4#1748f96fb65c80048162ca3202a94ba3).
|
||||
A recorded video.
|
||||
|
||||
### IFT ZK Call 3
|
||||
* fully qualified name: `vac:acz:ift:2025q3-ift-zk-calls:ift-zk-call-3`
|
||||
* owner: Marvin
|
||||
* status: not started
|
||||
* start-date: 2025/08/31
|
||||
* end-date: 2025/09/14
|
||||
|
||||
#### Description
|
||||
Preparing the agenda and possible speakers for the ZK call on 1st September.
|
||||
|
||||
#### Deliverables
|
||||
A document of a summary of the ZK call 3 meeting to [ZK Notion page](https://www.notion.so/Past-Meeting-Notes-1198f96fb65c80e6a51afa9a507aa64e?pvs=4#1748f96fb65c80048162ca3202a94ba3).
|
||||
A recorded video.
|
||||
166
content/acz/ift/2025q3-libp2p-mix-testnet.md
Normal file
166
content/acz/ift/2025q3-libp2p-mix-testnet.md
Normal file
@@ -0,0 +1,166 @@
|
||||
---
|
||||
|
||||
title: LibP2P mix testnet
|
||||
tags:
|
||||
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Publishing the findings with a blog post and a paper, and consulting the Waku PoC over mixnet"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-libp2p-mix-testnet`
|
||||
|
||||
Publishing the findings with a blog post and a paper, and consulting the Waku PoC over mixnet
|
||||
|
||||
## Description
|
||||
|
||||
This commitment entails publishing the findings with a blog post and a paper with an extensive benchmark and
|
||||
privacy analysis, also maintaining the Waku PoC over the mixnet.
|
||||
Lastly, review and modify the codebase for better compatibility.
|
||||
|
||||
### Background
|
||||
|
||||
The primary objective of this anonymization layer is to serve as a cohesive anonymization solution
|
||||
for gossip-based projects, with a specific focus on integrating it with the IFT projects Waku and Codex.
|
||||
|
||||
Our initial exploration will revolve around extending our [Tor push proposal](https://rfc.vac.dev/spec/46/).
|
||||
In this approach, messages will traverse through an anonymization network before being disseminated
|
||||
via gossip protocols upon exiting the anonymization network.
|
||||
Additionally, we aim to investigate the concept of embedding anonymization capabilities directly into gossipsub,
|
||||
rather than routing messages through a separate anonymization network before entering a standard gossipsub network operation.
|
||||
|
||||
In 2025q3, we delivered mixnet gossipsub to be benchmarked in large scale,
|
||||
updated the RFC with latest changes, and SURB implementationm lastly obtain
|
||||
the comparison between Nomos blend network and P2P mixnet.
|
||||
|
||||
### Narratives
|
||||
|
||||
By utilizing this commitment,
|
||||
we will reinforce the Conduit of Expertise narrative by:
|
||||
|
||||
- Deploy the mixnet implementation as standard mixnet to the [nimlibp2p](https://github.com/vacp2p/nim-libp2p) repo.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
|
||||
- Publish a paper on [arxiv.com](http://arxiv.com/) that includes security/privacy analysis
|
||||
with applicability and revelance(product-market fit), offering improvements over Tor push.
|
||||
- Publish a blogpost on [vac.dev/rlog](https://vac.dev/rlog) that includes update on transport layer of mixnet and
|
||||
Waku integration.
|
||||
|
||||
## Task List
|
||||
|
||||
### Updating RFC
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:update-rfc`
|
||||
* owner: Akshaya
|
||||
* status: started (20%)
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task entails completing updating the [mixnet RFC](https://rfc.vac.dev/vac/raw/mix)
|
||||
with latest findings such as clarifications on the pluggable components,
|
||||
introducing the entry and exit layers and libp2p integrations.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A [PR](https://github.com/vacp2p/rfc-index/pull/158) to [vacp2p/rfc-index](https://github.com/vacp2p/rfc-index)
|
||||
|
||||
### Investigate Unexpected Mixnet Latency
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:unexpected-latency`
|
||||
* owner: Akshaya
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task entails investigating to find root cause of unexpected latency.
|
||||
Observed latency with 3 mix hops and 100ms delays is ~1100–1600ms,
|
||||
far exceeding the expected ~300ms.
|
||||
Prior Lightpush tests showed much lower overhead.
|
||||
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to [vacp2p/mix](https://github.com/vacp2p/mix)
|
||||
|
||||
### Fix Premature Handler Invocation
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:premature-handler`
|
||||
* owner: Akshaya
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task entails solving the issue that: in some runs,
|
||||
handlers are triggered before any exit receives the message.
|
||||
Likely due to publisher advertising the message via IHAVE
|
||||
from its mcache while the mix path is still active.
|
||||
Requires investigation and fix.
|
||||
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to [vacp2p/mix](https://github.com/vacp2p/mix)
|
||||
|
||||
### Consulting Waku-mix
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:consulting-waku-mix`
|
||||
* owner: Akshaya
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Consulting about mixnet to Mixnet integration to the Waku.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* PR to [vacp2p/mix](https://github.com/vacp2p/mix) or [waku-org/nwaku](https://github.com/waku-org/nwaku/) repo.
|
||||
|
||||
### Multi SURB Design
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:multi-surb-design`
|
||||
* owner: Akshaya
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task focuses on developing a multi-SURB scheme
|
||||
capable of resolving inconsistencies that occur
|
||||
when multiple SURBs are concurrently active.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A [PR] to [vacp2p/rfc-index](https://github.com/vacp2p/rfc-index)
|
||||
|
||||
### Mix benchmarking
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:mix-benchmarking`
|
||||
* owner: Ben
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task involves running the next set of benchmarks after resolving the outstanding issues.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A [PR] to [vacp2p/nim-libp2p](https://github.com/vacp2p/rfc-index)
|
||||
|
||||
### nimlibp2p integration
|
||||
* fully qualified name: `vac:acz:ift:2025q3-libp2p-mix-testnet:nimlibp2p-integration`
|
||||
* owner: Ben
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
This task focuses on integration the mix into the [vacp2p/nim-libp2p repo](https://github.com/vacp2p/nim-libp2p)
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A [PR] to [vacp2p/nim-libp2p](https://github.com/vacp2p/rfc-index)
|
||||
128
content/acz/ift/2025q3-rln-status-l2.md
Normal file
128
content/acz/ift/2025q3-rln-status-l2.md
Normal file
@@ -0,0 +1,128 @@
|
||||
---
|
||||
|
||||
title: RLN Status L2
|
||||
tags:
|
||||
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Testing deployed RLN for the Status L2 architecture, including prover, verifier, deny list and RPC node"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-rln-status-l2`
|
||||
|
||||
## Description
|
||||
|
||||
This commitment entails testing and fine-tuning deployed RLN components
|
||||
for the gasless feature of the Status L2 architecture.
|
||||
Specifically, testing that all RLN components, such as prover, verifier, deny list,
|
||||
and RPC node, work fine with the Linea codebase securely and efficiently.
|
||||
|
||||
### Background
|
||||
|
||||
Status L2 is a rollup with Linea and builds a platform with the capacity
|
||||
to support SocialFi and GameFi apps, governance experiments, the Status voting system,
|
||||
and more, all while aiming to keep transaction costs low and throughput high.
|
||||
Status L2 will incorporate a gasless feature, necessitating an effective anti-spam mechanism.
|
||||
Rate-Limiting Nullifier (RLN) is a potential solution that could be deployed on
|
||||
Status L2 to prevent spam and support the gasless functionality.
|
||||
|
||||
In 2025q2, we released the RLN components such as prover, verifier, deny list, and RPC node.
|
||||
|
||||
### Narratives
|
||||
|
||||
By utilizing this commitment, we will reinforce the Conduit of Expertise narrative by:
|
||||
|
||||
- Continue sharing the RLN knowledge with the Status L2 team.
|
||||
- Testing modified RLN design to make sure all components work seaminglessly.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
|
||||
- Offering a RLN use-case to the ecosystem that can be used for other gasless roll-up projects.
|
||||
|
||||
## Task List
|
||||
|
||||
### Maintain RLN Specification
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-rln-status-l2:rln-spec-maintain`
|
||||
* owner: Ugur
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on maintainin a specification of RLN deployment to the Status L2 network,
|
||||
based in the feedbacks and changes during testnet.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A Notion doc document that has implementation details.
|
||||
|
||||
### Researching decentralized architecture
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-rln-status-l2:research-decentralized`
|
||||
* owner: Ugur
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on researching more decentralized and applicable solutions to the Status L2 network,
|
||||
by minimize the prover and RLN centralization.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A Notion doc document that has implementation details.
|
||||
|
||||
### E2E Prover module testing
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-rln-status-l2:e2e-prover-testing`
|
||||
* owner: Sylvain
|
||||
* status: not started
|
||||
* start-date: 2025/07/01
|
||||
* end-date: 2025/07/15
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on testing prover module with its edge cases before the testnet.
|
||||
The findings and feedbacks will be reflected to the RLN specification.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A Notion doc document that has implementation details.
|
||||
|
||||
### Devnet testing
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-rln-status-l2:devnet-testing`
|
||||
* owner: Sylvain
|
||||
* status: not started
|
||||
* start-date: 2025/07/15
|
||||
* end-date: 2025/09/15
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on testing internal devnet.
|
||||
The findings and feedbacks will be reflected to the RLN specification.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A Notion doc document that has implementation details.
|
||||
|
||||
### Prover Module maintaining
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q3-rln-status-l2:maintaining`
|
||||
* owner: Sylvain
|
||||
* status: started (0%)
|
||||
* start-date: 2025/07/07
|
||||
* end-date: 2025/09/25
|
||||
|
||||
#### Description
|
||||
This task encompasses all maintenance updates for prover module,
|
||||
including CI updates and the creation of future issues.
|
||||
|
||||
#### Deliverables
|
||||
A set of PRs and issues to [vacp2p/status-rln-prover](https://github.com/vacp2p/status-rln-prover).
|
||||
197
content/acz/ift/2025q3-zerokit.md
Normal file
197
content/acz/ift/2025q3-zerokit.md
Normal file
@@ -0,0 +1,197 @@
|
||||
---
|
||||
|
||||
title: Zerokit
|
||||
tags:
|
||||
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "ift"
|
||||
draft: false
|
||||
description: "Maintaining and improving Zerokit, including the release of its next version"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:ift:2025q3-zerokit`
|
||||
|
||||
Maintaining and improving Zerokit, including the release of its next version
|
||||
## Description
|
||||
|
||||
This commitment entails developing and maintaining Zerokit, including Zerokit v0.9.0 release by advancing the next version.
|
||||
|
||||
### Background
|
||||
|
||||
[Zerokit](https://github.com/vacp2p/zerokit) is a collection of Zero Knowledge modules
|
||||
that focus on RLN, developed in Rust, intended for integration with various system programming environments.
|
||||
|
||||
During 2025q2, we release Zerokit v0.8.0 which is wasm integration and tree optimization with better performance.
|
||||
|
||||
### Narratives
|
||||
|
||||
By utilizing the zerokit commitment, we will reinforce the Conduit of Expertise narrative by:
|
||||
|
||||
- Delivers an optimized version for IFT projects utilizing Zerokit,
|
||||
including [nwaku](https://github.com/waku-org/nwaku)and [js-rln](https://github.com/waku-org/js-rln) and [Status L2](https://docs.status.network/).
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
|
||||
- Offers a Rust crate that serves as a more efficient open-source development tool for users
|
||||
looking to integrate RLN into their projects.
|
||||
|
||||
## Task List
|
||||
|
||||
### Big Endian Support
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:big-endian-support`
|
||||
- owner: Sylvain
|
||||
- status: started
|
||||
- start-date: 2025/06/20
|
||||
- end-date: 2025/07/20
|
||||
|
||||
#### Description
|
||||
|
||||
This task addresses a request from the nwaku team to add **Big Endian support**
|
||||
for Zerokit's stateless feature.
|
||||
This is critical because data on the smart contract side is processed in Big Endian format.
|
||||
Specifically, we need to ensure all relevant key generation and
|
||||
hash functions within Zerokit correctly handle Big Endian data.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
- A Pull Request to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/) that includes new functions
|
||||
for working with Big Endian data and updates the public API to expose this functionality.
|
||||
|
||||
---
|
||||
|
||||
### CI and Feature Revising
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:ci-revising`
|
||||
- owner:
|
||||
- status: not started
|
||||
- start-date:
|
||||
- end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
This task focuses on improving Zerokit's Continuous Integration (CI)
|
||||
and build setup to enable more flexible and accurate binary generation. Key objectives include:
|
||||
|
||||
- **Integrating missing options for generating feature-specific binaries**,
|
||||
and **making `arkzkey` the default feature** for improved consistency.
|
||||
This will also require creating a script to convert `arkzkey` from `zkey`.
|
||||
- **Addressing the current default enablement of the `parallel` feature** within the `rln` module.
|
||||
This was a temporary workaround for a macro expansion issue in `graph.rs` affecting WASM multithreading.
|
||||
The goal is to **refactor the feature flags** across Zerokit
|
||||
and its internal dependencies to allow `parallel` to be optional.
|
||||
This cleanup will require a thorough review of all dependent crates
|
||||
that internally utilize the `parallel` flag.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A Pull Request to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/) with updated CI configurations.
|
||||
|
||||
### Consistent Naming and Docs for Merkle Trees
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:merkle-tree-revising`
|
||||
- owner:
|
||||
- status: not started
|
||||
- start-date:
|
||||
- end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Based on this [GitHub comment](https://github.com/vacp2p/zerokit/pull/306),
|
||||
this task aims to improve consistency and clarity within Zerokit's Merkle tree implementation.
|
||||
We'll **rename `TEST_TREE_HEIGHT` to `TEST_TREE_DEPTH`** for better conceptual alignment.
|
||||
Additionally, we'll **enhance documentation and the `Cargo.toml` file**
|
||||
to clearly explain which Merkle tree implementation to use and when.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A Pull Request to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/) containing
|
||||
the renamed variables and updated, more detailed documentation.
|
||||
|
||||
### Implement PmTreeConfig Builder
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:pmtree-config-builder`
|
||||
- owner: Vinh
|
||||
- status: Not Started
|
||||
- start-date:
|
||||
- end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Currently, initializing a `PmTreeConfig` struct for `PmTree` in Rust requires either
|
||||
providing a JSON-formatted string or using the default configuration.
|
||||
This approach lacks type safety and compile-time validation,
|
||||
making configuration less ergonomic and more prone to runtime errors.
|
||||
|
||||
This task aims to improve the `PmTreeConfig` initialization process by **implementing a builder pattern**.
|
||||
This will allow developers to construct `PmTreeConfig` instances programmatically with clear,
|
||||
chained method calls, enhancing readability, type safety, and ease of use,
|
||||
rather than solely relying on string-based JSON parsing.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A Pull Request to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/) containing:
|
||||
|
||||
- A new `PmTreeConfigBuilder` implementation.
|
||||
- Updated documentation and examples demonstrating the new builder pattern usage.
|
||||
|
||||
### RLN-WASM Maintenance
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:rln-wasm-maintaining`
|
||||
- owner: Vinh
|
||||
- status: Not Started
|
||||
- start-date: 2025/06/30
|
||||
- end-date: 2025/09/30
|
||||
|
||||
#### Description
|
||||
|
||||
This task consolidates several outstanding issues related to `rln-wasm` following the last release.
|
||||
The key objectives are:
|
||||
|
||||
- **Standardize `stateless` feature enablement**:
|
||||
The current `rln-wasm` build always works with the `stateless` feature enabled.
|
||||
We should make this the **default**, as `rln-wasm` does not support instances
|
||||
where the tree is part of the instance itself.
|
||||
- **Add a local Node.js test**:
|
||||
Implement a local Node.js test for the multithreaded `rln-wasm` feature to ensure its correct functionality.
|
||||
- **Address `wasm-bindgen-rayon` issue**:
|
||||
Follow up on the open issue [here](https://github.com/RReverser/wasm-bindgen-rayon/issues/26) and,
|
||||
if necessary, update the `rln-wasm` module based on the resolution.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A set of PRs to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/) addressing the outlined `rln-wasm` maintenance items.
|
||||
|
||||
### Zerokit maintaining
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:zerokit-maintaining`
|
||||
- owner: Ekaterina
|
||||
- status: not started
|
||||
- start-date:
|
||||
- end-date:
|
||||
|
||||
### Description
|
||||
|
||||
This task encompasses all maintenance updates for Zerokit, including CI updates and the creation of future issues.
|
||||
|
||||
### Deliverables
|
||||
|
||||
A set of PRs and issues to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/).
|
||||
|
||||
### Release v0.9.0
|
||||
|
||||
- fully qualified name: `vac:acz:ift:2025q3-zerokit:release`
|
||||
- owner: Ekaterina
|
||||
- status: started
|
||||
- start-date:
|
||||
- end-date:
|
||||
|
||||
### Description
|
||||
|
||||
The new version of the Zerokit v0.9.0
|
||||
|
||||
### Deliverables
|
||||
|
||||
A set of PRs to vacp2p/zerokit repository with [tag v0.9.0](https://github.com/vacp2p/zerokit/releases/tag/v0.9.0)
|
||||
@@ -5,8 +5,22 @@ tags:
|
||||
- vac
|
||||
---
|
||||
|
||||
[[preview|Roadmap Preview]]
|
||||
|
||||
## 2025q3 `vac:acz:`
|
||||
---
|
||||
|
||||
### `ift`
|
||||
* [ ] [[acz/ift/2025q3-zerokit|2025q3-zerokit]]
|
||||
* [ ] [[acz/ift/2025q3-de-mls-testnet.md|2025q3-de-mls-testnet.md]]
|
||||
* [ ] [[acz/ift/2025q3-libp2p-mix-testnet|2025q3-libp2p-mix-testnet]]
|
||||
* [ ] [[acz/ift/2025q3-ift-zk-calls|2025q3-ift-zk-calls]]
|
||||
* [ ] [[acz/ift/2025q3-rln-status-l2|2025q3-rln-status-l2]]
|
||||
* [ ] [[acz/ift/2025q3-discovery|2025q3-discovery]]
|
||||
|
||||
### `nes`
|
||||
* [ ] [[acz/nes/2025q3-nescience-consulting|2025q3-nescience-consulting]]
|
||||
|
||||
---
|
||||
## 2025q2 `vac:acz:`
|
||||
* [ ] [[acz/ift/2025q2-zerokit|2025q2-zerokit]]
|
||||
* [ ] [[acz/ift/2025q2-de-mls-testnet.md|2025q2-de-mls-testnet.md]]
|
||||
|
||||
35
content/acz/nes/2025q3-nescience-consulting.md
Normal file
35
content/acz/nes/2025q3-nescience-consulting.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: Nescience Consulting
|
||||
tags:
|
||||
- "2025q3"
|
||||
- "acz"
|
||||
- "nes"
|
||||
draft: false
|
||||
description: "Creating research documents and specifications
|
||||
for Nescience architecture"
|
||||
|
||||
---
|
||||
|
||||
`vac:acz:nes:2025q3-nescience-consulting`
|
||||
|
||||
Creating research documents and specifications
|
||||
for Nescience architecture
|
||||
## Description
|
||||
|
||||
ACZ offers review consulting services to Nescience,
|
||||
acting as a bridge between Nescience researchers and engineers,
|
||||
facilitating faster and more efficient communication between the two groups.
|
||||
|
||||
By utilizing the Nescience Consulting commitment,
|
||||
|
||||
we will reinforce the Conduit of Expertise narrative by:
|
||||
* The Nescience specifications will be reviewed and refined from an engineering perspective.
|
||||
* Addressing any potential gaps in the architecture, whether theoretical or practical,
|
||||
if any are identified
|
||||
* Improve communication between Nescience researchers and developers.
|
||||
|
||||
We will also strengthen the Premier Research Destination narrative by:
|
||||
* This will enable the Nescience project to be more effectively integrated
|
||||
and introduced into the ecosystem.
|
||||
|
||||
## Task List
|
||||
Reference in New Issue
Block a user