mirror of
https://github.com/logos-messaging/pm.git
synced 2026-01-02 14:13:09 +00:00
Specify expectations around packaging
This commit is contained in:
parent
d25ed2a134
commit
a38fefb055
@ -2,7 +2,7 @@
|
||||
|
||||
## Functionality
|
||||
|
||||
1. Accounts can be created in a permissionless way, to communicate on the network.
|
||||
1. Accounts can be created in a permission-less way, to communicate on the network.
|
||||
2. Accounts can send messages to conversations with one other participant.
|
||||
3. All conversations benefit from forward secrecy and post-compromise security.
|
||||
4. Sender gets confirmation of message reception by recipient device.
|
||||
@ -28,11 +28,12 @@
|
||||
|
||||
1. Messaging integrates RLN-like rate limit, limiting outbound messages per epoch.
|
||||
2. Payload definitions are versioned to support future protocol updates.
|
||||
3. library can be used in Go applications
|
||||
4. library can be used in Rust applications
|
||||
3. library can be used in Go applications; available on pkg.go.dev.
|
||||
4. library can be used in Rust applications; import via git path.
|
||||
|
||||
## +Privacy
|
||||
## + (Privacy, Anonymity, Deployments)
|
||||
|
||||
1. Non-participants in the conversation cannot correlate individual messages to a sender.
|
||||
2. Non-participants in the conversation cannot correlate conversation to participants.
|
||||
3. Network observers cannot aggregate account holder activity.
|
||||
3. Network observers cannot aggregate account holder activity.
|
||||
4. Nimble package manager is used to build.
|
||||
@ -21,10 +21,10 @@
|
||||
|
||||
## Supportability
|
||||
|
||||
1. Developers can create group conversations from Go Applications
|
||||
2. Developers can create group conversations from Rust Applications
|
||||
1. Developers can create group conversations from Go Applications; available on pkg.go.dev.
|
||||
2. Developers can create group conversations from Rust Applications; available on crates.io.
|
||||
|
||||
## +Privacy
|
||||
## + (Privacy, Anonymity, Deployments)
|
||||
|
||||
1. Non-participants cannot correlate a group conversation to any of its participants.
|
||||
2. No identifying information is visible when registering an installation.
|
||||
@ -28,8 +28,8 @@
|
||||
|
||||
## Supportability
|
||||
|
||||
1. ...
|
||||
1. Nim library.
|
||||
|
||||
## + (Privacy, Anonymity, Deployments)
|
||||
|
||||
1. ...
|
||||
1. Nimble package manager is used to build.
|
||||
@ -23,9 +23,10 @@
|
||||
|
||||
## Supportability
|
||||
|
||||
1. Nim
|
||||
1. Nim library.
|
||||
|
||||
## + (Privacy, Anonymity, Deployments)
|
||||
|
||||
1. Segmentation metadata should not reveal information about the original message content
|
||||
2. Relevant for all Waku nodes
|
||||
2. Relevant for all Waku nodes.
|
||||
3. Nimble package manager is used to build.
|
||||
|
||||
@ -27,9 +27,9 @@
|
||||
|
||||
## Supportability
|
||||
|
||||
1. Nim library
|
||||
2. Golang library
|
||||
3. Browser
|
||||
1. Nim library; import via git path.
|
||||
2. Golang library; available on pkg.go.dev.
|
||||
3. Browser; distribution via npmjs.com.
|
||||
|
||||
## + (Privacy, Anonymity, Deployments)
|
||||
|
||||
|
||||
@ -87,11 +87,12 @@ In order of priority.
|
||||
| 7 | [Improve DevEx: API, TWN, Metrics, Docs](improve_devex_api_twn_metrics_docs.md) | TBD | TBD | TBD | TBD | TBD |
|
||||
| 8 | [Introduce mixnet for message sending](introduce_mixnet_for_message_sending.md) | 30 Sep | 1*3m | | | |
|
||||
| 9 | [Formalize Logos Web Apps](formalize_logos_web_apps.md) | 19 Dec | | | | 1.5*6m |
|
||||
| 10 | [Introduce Chat SDK by enabling basic one-to-one chats]() TODO | TBD | | | | TBD |
|
||||
| 10 | [Create Chat SDK MVP](create_chat_sdk_mvp.md) | TBD | | | | TBD |
|
||||
| 11 | [Integrate RLN with Waku API](integrate_rln_with_waku_api.md) | TBD | TBD | 1*2m | TBD | |
|
||||
| 12 | [Streamline DevEx: Mobile, Rust and Web dev](streamline_dev_ex_local_dev_rust.md) | TBD | TBD? | TBD | TBD | |
|
||||
| 13 | Incentivisation follow-up | TBD | TBD | | | |
|
||||
| 14 | [Nim Usage Improvements](nim_usage_improvements.md) | TBD | | | TBD | |
|
||||
| 13 | [Extend Chat SDK with Group Conversations](extend_chat_sdk_with_group_conversations.md) | TBD | | | | TBD |
|
||||
| 14 | Incentivisation follow-up | TBD | TBD | | | |
|
||||
| 15 | [Nim Usage Improvements](nim_usage_improvements.md) | TBD | | | TBD | |
|
||||
|
||||
Pushed to 2026
|
||||
- WebTransport: depending on nim-libp2p (delivery Q4)
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# Create MVP ChatSDK
|
||||
# Create Chat SDK MVP
|
||||
|
||||
**Estimated date of completion**: 19 Aug 2025
|
||||
|
||||
@ -47,7 +47,7 @@ This milestone is complete when a development preview of the Chat SDK is publish
|
||||
**Feature**: [Chat SDK](/FURPS/application/chat_sdk.md)
|
||||
|
||||
**FURPS**:
|
||||
- F1. Accounts can be created in a permissionless way, to communicate on the network.
|
||||
- F1. Accounts can be created in a permission-less way, to communicate on the network.
|
||||
- F2. Accounts can send messages to conversations with one other participant.
|
||||
- F3. All conversations benefit from forward secrecy and post-compromise security.
|
||||
- F4. Sender gets confirmation of message reception by recipient device.
|
||||
@ -66,6 +66,8 @@ This milestone is complete when a development preview of the Chat SDK is publish
|
||||
- S1. Messaging integrates RLN-like rate limit, limiting outbound messages per epoch.
|
||||
- S2. Payload definitions are versioned to support future protocol updates.
|
||||
|
||||
- +4. Nimble package manager is used to build.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs and/or API definition
|
||||
- [ ] Code: link to GitHub issues/PRs/Epic
|
||||
@ -85,8 +87,9 @@ This milestone is complete when a development preview of the Chat SDK is publish
|
||||
|
||||
For library ChatSDK:
|
||||
- U3. Minimal example of the ChatSDK is no more than 25 lines of code.
|
||||
- S3. library can be used in Go applications.
|
||||
- S4. library can be used in Rust applications
|
||||
|
||||
- S3. library can be used in Go applications; available on pkg.go.dev.
|
||||
- S4. library can be used in Rust applications; import via git path.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs and/or API definition
|
||||
@ -114,10 +117,11 @@ For library ChatSDK:
|
||||
|
||||
- P1. The payload overhead does not exceed 12.5% overall, and 100 bytes per segment.
|
||||
|
||||
- S1. Nim
|
||||
- S1. Nim library.
|
||||
|
||||
- +1. Segmentation metadata should not reveal information about the original message content
|
||||
- +2. Relevant for all Waku nodes
|
||||
- +3. Nimble package manager is used to build.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs
|
||||
@ -148,6 +152,8 @@ For library ChatSDK:
|
||||
- R2. Queued messages are persisted across restart.
|
||||
- R3. Quota status is persisted across restart.
|
||||
|
||||
- S1. Nim library.
|
||||
- +1. Nimble package manager is used to build.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs
|
||||
@ -1,4 +1,4 @@
|
||||
# Extend ChatSDK with Group Chat
|
||||
# Extend Chat SDK with Group Conversations
|
||||
|
||||
**Estimated date of completion**: 18 Nov 2025
|
||||
|
||||
@ -13,7 +13,7 @@ The features to said group chat will be limited, and extended with further miles
|
||||
|
||||
**Risks**:
|
||||
|
||||
- (Schedule)(Medium) - Task Dependency: This task is dependent on [ChatSDK - Developer Preview](/draft-roadmap/create_chat_sdk.md).
|
||||
- (Schedule)(Medium) - Task Dependency: This task is dependent on [ChatSDK - Developer Preview](create_chat_sdk_mvp.md).
|
||||
Delays there will translate into delays to this milestone.
|
||||
- (Technical)(Medium) - Lack of Libraries: There currently does not exist the required libraries in Nim to build group
|
||||
chat. This will involve evaluating the potential of calling an existing library via FFI or implementing it from
|
||||
@ -64,8 +64,8 @@ The features to said group chat will be limited, and extended with further miles
|
||||
|
||||
**FURPS**:
|
||||
|
||||
- S1. Developers can create group conversations from Go Applications
|
||||
- S2. Developers can create group conversations from Rust Applications
|
||||
- S1. Developers can create group conversations from Go Applications; available on pkg.go.dev.
|
||||
- S2. Developers can create group conversations from Rust Applications; available on crates.io.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs and/or API definition
|
||||
@ -138,7 +138,7 @@ Spec delivery not included.
|
||||
- R1. Sends a message using peer-to-peer reliability (service node redundancy, optional store confirmation)
|
||||
- R2. Receives messages using peer-to-peer reliability (service node redundancy, periodic store query, periodic filter ping)
|
||||
|
||||
For S3. Browser
|
||||
For S3. Browser; distribution via npmjs.com.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs and/or API definition
|
||||
@ -166,8 +166,8 @@ For S3. Browser
|
||||
- R2. Receives messages using peer-to-peer reliability (service node redundancy, periodic store query, periodic filter ping)
|
||||
|
||||
For:
|
||||
- S1. Nim library; used by chat SDK
|
||||
- S2. Golang library; used by status-go
|
||||
- S1. Nim library; import via git path.
|
||||
- S2. Golang library; available on pkg.go.dev.
|
||||
|
||||
**Checklist**:
|
||||
- [ ] Specs: link to specs and/or API definition
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user