Skip to content

Commit 44020dd

Browse files
committed
feat: Introduce Messaging API General Availability milestone
1 parent 6038db0 commit 44020dd

1 file changed

Lines changed: 78 additions & 0 deletions

File tree

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
---
2+
title: Messaging API — General Availability
3+
tags:
4+
- messaging-milestone
5+
date: 2025-07-03
6+
---
7+
8+
# Messaging API — General Availability
9+
10+
**Estimated date of completion**: June 2026 (Testnet v0.2)
11+
12+
**Resources Required for 2026H1**:
13+
- 1 Nim engineer for testing support and bugfixes
14+
- 1 Nim engineer for edge mode
15+
- 1 Nim engineer for Store API work.
16+
17+
The Developer Preview delivered the Send and Health APIs in core mode. General Availability completes the Messaging API with:
18+
19+
1. **Subscribe/Receive API** — complete the message reception flow with P2P reliability
20+
2. **Edge mode** — support light push for sending, filter for reception, and peer exchange for discovery. Required for mobile support and Status integration.
21+
3. **Store API** — Status still relies on Store nodes for history retrieval, community descriptions, profiles, and SDS-hinted missed messages. Either introduce a new Store API alongside Messaging API, or allow using low-level API from the same `liblogosdelivery`.
22+
4. **Test suite** — Messaging API is QA-approved. Involvement of DST for reliability testing.
23+
5. **Documentation** — comprehensive developer documentation on the API.
24+
25+
## FURPS
26+
27+
- [Messaging API](/messaging/furps/core/messaging_sdk.md): F2, F6, R2, S2
28+
29+
## Risks
30+
31+
| Risk | (Accept, Own, Mitigation) |
32+
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
33+
| P2P Reliability in edge mode | P2P reliability has only been tested in core mode. Edge mode introduces filter and light push which may require different reliability strategies. |
34+
| Store is out of Messaging API scope | The Messaging API intentionally left the Store protocol outside to prevent foot-guns, a decision has to be made here to enable Status to use Messaging API. |
35+
36+
## Deliverables
37+
38+
### Add Subscribe/Receive functionality to Messaging API
39+
40+
**Owner**: Delivery Team
41+
42+
**Feature**: [Messaging API](/messaging/furps/core/messaging_sdk.md)
43+
44+
**FURPS**:
45+
- R2. Receives messages using peer-to-peer reliability (service node redundancy, periodic store query, periodic filter ping)
46+
47+
### Support edge mode in Messaging API
48+
49+
**Owner**: Delivery Team
50+
51+
**Feature**: [Messaging API](/messaging/furps/core/messaging_sdk.md)
52+
53+
**FURPS**:
54+
- F2. Support edge node operation mode.
55+
- F6. Previously discovered peers are persisted across restarts, and potentially used for future connections.
56+
57+
### Provide Store API access for Status needs
58+
59+
**Owner**: Delivery Team
60+
61+
Status relies on Store nodes for:
62+
1. Fetching history while being offline
63+
2. Fetching community descriptions and profiles
64+
3. Fetching missed messages (by SDS hints)
65+
66+
Either introduce a new Store API (next to Messaging API), or allow using low-level API from the same `liblogosdelivery`.
67+
68+
Note that Store protocol was intentionally left out of Messaging API. But we should provide a solution for existing apps, e.g. Status.
69+
70+
### Test suite for Messaging API
71+
72+
**Owner**: Delivery Team
73+
74+
Messaging API should be QA-approved. Coordinate with DST for reliability and scale testing.
75+
76+
### Provide comprehensive documentation on the API
77+
78+
**Owner**: Delivery Team

0 commit comments

Comments
 (0)