From 0e2b4b012bd26bcea7e7af0092a29c7311fb45a3 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Thu, 5 Jun 2025 17:09:33 +1000 Subject: [PATCH] tidy up improve devex milestone --- FURPS/application/nwaku.md | 2 + FURPS/core/store_sync.md | 23 +++++ .../improve_devex_api_twn_metrics_docs.md | 85 ++++++++++++++----- 3 files changed, 91 insertions(+), 19 deletions(-) create mode 100644 FURPS/core/store_sync.md diff --git a/FURPS/application/nwaku.md b/FURPS/application/nwaku.md index 58101f6..88d2de1 100644 --- a/FURPS/application/nwaku.md +++ b/FURPS/application/nwaku.md @@ -21,6 +21,8 @@ 1. libwaku, wakunode2 can build on Windows 2. libwaku supports relay functionalities. +3. TCP transport is supported for peer-to-peer message routing connections. +4. QUIC transport is supported for peer-to-peer message routing connections. ## + (Privacy, Anonymity, Deployments) diff --git a/FURPS/core/store_sync.md b/FURPS/core/store_sync.md new file mode 100644 index 0000000..335b6cb --- /dev/null +++ b/FURPS/core/store_sync.md @@ -0,0 +1,23 @@ +# Store Sync FURPS + +## Functionality + +1. Store nodes synchronize recent messages with each other. +2. Store node to store node synchronization happens on a periodic manner. +3. Store node to store node synchronization happens after re-connection is detected. + +## Usability + +1. Remote store peer selection is done automatically. + +## Reliability + +1. No message discrepancies at any time, for time windows of 5 minutes to 60 minutes ago. + +## Performance + +1. A sync of a 60 minutes time window happens under 60 seconds, assuming 15 msgs/second (total), 150KB message size and a maximum of 10% pre-existing message discrepancy (**Vac-DST**). + +## Supportability + +1. nwaku store service node \ No newline at end of file diff --git a/draft-roadmap/improve_devex_api_twn_metrics_docs.md b/draft-roadmap/improve_devex_api_twn_metrics_docs.md index 942faf0..a660672 100644 --- a/draft-roadmap/improve_devex_api_twn_metrics_docs.md +++ b/draft-roadmap/improve_devex_api_twn_metrics_docs.md @@ -14,22 +14,69 @@ This includes: - simplifying the Waku API - measuring Waku usage across all integrations - review and setting strategy for Waku documentation - - -**FURPS**: - -- [{Feature Name}]({path/to/furps/file}): {list of furps: F1, etc} -- [Network Metrics Tracker](/FURPS/application/network_metrics_tracker.md): all +- Testing quic as new transport **deliverables**: -(TODO: adjust FURPS for existing deliverables) -- [Global Network Metrics](https://github.com/waku-org/pm/issues/295) -- [Scalable Data Sync in Browser](https://github.com/waku-org/pm/issues/280) -- [Improved Browser Bootstrap](https://github.com/waku-org/pm/issues/290) -- [Waku Sync](https://github.com/waku-org/pm/issues/132) +## [Global Network Metrics](https://github.com/waku-org/pm/issues/295) -TODO: quic PoC +**Owner**: App/Chat Dev + +**Feature**: [Network Metrics Tracker](/FURPS/application/network_metrics_tracker.md) + +**FURPS**: +- all + +**Checklist**: +- [ ] Specs: link to specs and/or API definition +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- [ ] Docs: links to README.md or docs.waku.org (TBD) + +## [Scalable Data Sync in Browser](https://github.com/waku-org/pm/issues/280) + +**Owner**: js-waku + +**Feature**: [SDS](/FURPS/application/sds.md) + +**FURPS**: +- all + +For S2. For Web apps as a developer library. + +**Checklist**: +- [ ] Specs: link to specs and/or API definition +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- [ ] Docs: links to README.md or docs.waku.org (TBD) + +## [Improved Browser Bootstrap](https://github.com/waku-org/pm/issues/290) + +**Owner**: js-waku + +**Feature**: TODO see https://github.com/waku-org/pm/pull/308 + +**FURPS**: TODO + +**Checklist**: +- [ ] Specs: link to specs and/or API definition +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- [ ] Docs: links to README.md or docs.waku.org (TBD) + +## [Waku Sync](https://github.com/waku-org/pm/issues/132) + +**Owner**: core research + +**Feature**: [Store Sync](/FURPS/core/store_sync.md) + +**FURPS**: all + +**Checklist**: +- [ ] Specs: link to specs and/or API definition +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- [ ] Docs: links to README.md or docs.waku.org (TBD) ## Define and Implement Light Push Error codes in nwaku @@ -139,14 +186,14 @@ For: - [ ] Define a guideline for Waku teams to follow when contributing to documentation - [ ] Setup an initial structure -## Use Protobuf to transfer data from Wrapper to nwaku library PoC TBC +## Trial QUIC -**Owner**: {one waku subteam} +**Owner**: nwaku -**Feature**: [{Feature Name (only 1)}]({path/to/furps/file}) +**Feature**: [nwaku](/FURPS/application/nwaku.md) **FURPS**: -- {F1. copy-paste full furps statement} +- S4. QUIC transport is supported for peer-to-peer message routing connections. **Checklist**: - [ ] Specs: link to specs and/or API definition @@ -154,11 +201,11 @@ For: - [ ] Dogfood: link to dogfooding session/artefact - [ ] Docs: links to README.md or docs.waku.org (TBD) -## {Name of deliverable 1 - eg "improve feature X for the browser"} +## Use Protobuf to transfer data from Wrapper to nwaku library PoC TBC -**Owner**: {one waku subteam} +**Owner**: nwaku -**Feature**: [{Feature Name (only 1)}]({path/to/furps/file}) +**Feature**: TODO **FURPS**: - {F1. copy-paste full furps statement}