From e62128052d8cf9a24761554338a81d6d4e834b84 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Tue, 10 Jun 2025 16:09:35 +1000 Subject: [PATCH] Add FURPS --- FURPS/application/local_web_dev_harness.md | 25 +++++++++++++++++++ FURPS/core/rln_api.md | 20 +++++++++++++++ FURPS/core/rln_relay.md | 7 +++++- draft-roadmap/integrate_rln_with_waku_api.md | 10 +++++--- .../streamline_dev_ex_local_dev_rust.md | 19 ++++++++++++-- 5 files changed, 75 insertions(+), 6 deletions(-) create mode 100644 FURPS/application/local_web_dev_harness.md create mode 100644 FURPS/core/rln_api.md diff --git a/FURPS/application/local_web_dev_harness.md b/FURPS/application/local_web_dev_harness.md new file mode 100644 index 0000000..88e28c9 --- /dev/null +++ b/FURPS/application/local_web_dev_harness.md @@ -0,0 +1,25 @@ +# Local Web Dev Harness FURPS + +## Functionality + +1. Runs local Waku node to test Web application without relying on external connectivity. +2. js-waku runs in NodeJS for testing and CI purposes. + +## Usability + +1. Developer only need to run a script or preset to start local Waku node and have their web app connect to it. +2. Potential WSS/HTTPS issues are worked around so that developer does need to manually generate or import SSL certificates. +3. There is an easy option for the developer to bootstrap and connect to local node, instead of external peers. + +## Reliability + +## Performance + + +## Supportability + +1. Linux and Mac development environments. +2. Local network without RLN. +3. Chrome and Firefox browsers. + +## + (Privacy, Anonymity, Deployments) diff --git a/FURPS/core/rln_api.md b/FURPS/core/rln_api.md new file mode 100644 index 0000000..e16757b --- /dev/null +++ b/FURPS/core/rln_api.md @@ -0,0 +1,20 @@ +# Waku RLN API FURPS + +TODO + +## Functionality + + +## Usability + + +## Reliability + +## Performance + +## Supportability + + +## + (Privacy, Anonymity, Deployments) + +1. ... \ No newline at end of file diff --git a/FURPS/core/rln_relay.md b/FURPS/core/rln_relay.md index 43f9b63..73c95d1 100644 --- a/FURPS/core/rln_relay.md +++ b/FURPS/core/rln_relay.md @@ -3,10 +3,14 @@ ## Functionality 1. Light push service node can attach RLN proof for clients. +2. Relay node can attach RLN proof for outbound messages. +3. Relay node can verify RLN proof for inbound messages. +4. Light push client can be configured to generate proof for outbound messages. +5. Filter client can be configured to verify proof for inbound messages. ## Usability -1. Light push clients do not need RLN logic. +1. Light push clients do not need RLN logic when using RLNaaS. ## Reliability @@ -23,6 +27,7 @@ ## Supportability 1. Service node proof generation for light push clients is available in `wakunode2` for browser clients. +2. Browser edge nodes can be configured to verify and generate proofs. ## + (Privacy, Anonymity, Deployments) diff --git a/draft-roadmap/integrate_rln_with_waku_api.md b/draft-roadmap/integrate_rln_with_waku_api.md index f5f5670..a6198c6 100644 --- a/draft-roadmap/integrate_rln_with_waku_api.md +++ b/draft-roadmap/integrate_rln_with_waku_api.md @@ -71,10 +71,13 @@ TODO **Owner**: js-waku -**Feature**: [{Feature Name (only 1)}]({path/to/furps/file}) +**Feature**: [RLN Relay](/FURPS/core/rln_relay.md) **FURPS**: -- {F1. copy-paste full furps statement} +- F4. Light push client can be configured to generate proof for outbound messages. +- F5. Filter client can be configured to verify proof for inbound messages. + +- S2. Browser edge nodes can be configured to verify and generate proofs. **Checklist**: - [ ] Specs: link to specs and/or API definition @@ -86,7 +89,8 @@ TODO **Owner**: nwaku -**Feature**: [{Feature Name (only 1)}]({path/to/furps/file}) +TODO +**Feature**: [Waku RLN API](/FURPS/core/rln_api.md) **FURPS**: - {F1. copy-paste full furps statement} diff --git a/draft-roadmap/streamline_dev_ex_local_dev_rust.md b/draft-roadmap/streamline_dev_ex_local_dev_rust.md index c38484d..0fecab7 100644 --- a/draft-roadmap/streamline_dev_ex_local_dev_rust.md +++ b/draft-roadmap/streamline_dev_ex_local_dev_rust.md @@ -95,12 +95,27 @@ TODO ### Local Web Dev Harness +TODO: update milestone +1 js-waku engineer, 70% cap allocated; +start 1st Sep, end 19th Sep; + + **Owner**: js-waku -**Feature**: [{Feature Name (only 1)}]({path/to/furps/file}) +**Feature**: [Local Web Dev Harness](/FURPS/application/local_web_dev_harness.md) **FURPS**: -- {F1. copy-paste full furps statement} + +- F1. Runs local Waku node to test Web application without relying on external connectivity. +- F2. js-waku runs in NodeJS for testing and CI purposes. + +- U1. Developer only need to run a script or preset to start local Waku node and have their web app connect to it. +- U2. Potential WSS/HTTPS issues are worked around so that developer does need to manually generate or import SSL certificates. +- U3. There is an easy option for the developer to bootstrap and connect to local node, instead of external peers. + +- S1. Linux and Mac development environments. +- S2. Local network without RLN. +- S3. Chrome and Firefox browsers. **Checklist**: - [ ] Specs: link to specs and/or API definition