Add FURPS for RLN API

This commit is contained in:
fryorcraken 2025-06-10 16:20:35 +10:00
parent e62128052d
commit b87b504174
No known key found for this signature in database
GPG Key ID: A82ED75A8DFC50A4
3 changed files with 28 additions and 6 deletions

View File

@ -1,12 +1,18 @@
# Waku RLN API FURPS
TODO
## Functionality
1. Accepts RLN network configuration at initialization.
2. API to pass messages for proof validation.
3. API to import RLN credentials, compatible with RLN Membership management.
4. API to accept Waku Message and generate proof.
5. API to inform on configured rate limit parameters and remaining quota.
## Usability
1. TWN RLN configuration is applied by default.
2. No boilerplate code beyond initialization is necessary to pass RLN instance in a Waku API implementation.
3. Rate usage is persisted across restarts.
## Reliability
@ -14,7 +20,10 @@ TODO
## Supportability
1. library can be used in Go applications; available on pkg.go.dev.
2. library can be used in Rust applications; import via git path.
3. library can be used in Nim applications; import via git path.
## + (Privacy, Anonymity, Deployments)
1. ...
1. Only one set of credentials can be used at a given time.

View File

@ -93,7 +93,7 @@ In order of priority.
|----------|-----------------------------------------------------------------------------------------|----------|----------|---------|-------|-------------|
| 1 | [Define Incentivisation for RLNaaS](define_incentivisation_for_rlnaas.md) | 31 Jul | 1.5 | | | |
| 2 | [Improve DevEx: API, TWN, Metrics, Docs](improve_devex_api_twn_metrics_docs.md) | TBD | TBD | TBD | TBD | 0.16.. |
| 3 | [Introduce mixnet for message sending](introduce_mixnet_for_message_sending.md) | 30 Sep | 1*3m | | | |
| 3 | [Introduce mixnet for message sending](introduce_mixnet_for_message_sending.md) | 30 Sep | 0.5 | | | |
| 4 | [Formalize and Expand Waku Web Apps](formalize_and_expand_waku_web_apps.md) | 19 Dec | | | | 1.5 |
| 5 | [Create Chat SDK MVP](create_chat_sdk_mvp.md) | 30 Sep | | | | 2 dev/1 res |
| 6 | [Integrate RLN with Waku API](integrate_rln_with_waku_api.md) | TBD | TBD | 1*2m | TBD | |

View File

@ -89,11 +89,24 @@ TODO
**Owner**: nwaku
TODO
**Feature**: [Waku RLN API](/FURPS/core/rln_api.md)
**FURPS**:
- {F1. copy-paste full furps statement}
- F1. Accepts RLN network configuration at initialization.
- F2. API to pass messages for proof validation.
- F3. API to import RLN credentials, compatible with RLN Membership management.
- F4. API to accept Waku Message and generate proof.
- F5. API to inform on configured rate limit parameters and remaining quota.
- U1. TWN RLN configuration is applied by default.
- U2. No boilerplate code beyond initialization is necessary to pass RLN instance in a Waku API implementation.
- U3. Rate usage is persisted across restarts.
- S1. library can be used in Go applications; available on pkg.go.dev.
- S2. library can be used in Rust applications; import via git path.
- S3. library can be used in Nim applications; import via git path.
- +1. Only one set of credentials can be used at a given t
**Checklist**:
- [ ] Specs: link to specs and/or API definition