From b81670c414958f39cc2207a25dd3cffcc8aae6d8 Mon Sep 17 00:00:00 2001 From: "Evgeny @ SimpleX Chat" <259188159+evgeny-simplex@users.noreply.github.com> Date: Tue, 10 Mar 2026 19:18:34 +0000 Subject: [PATCH] docs: move implemented rfcs --- {rfcs => plans}/done/2024-09-01-smp-message-storage.md | 1 + {rfcs => plans}/done/2024-09-15-shared-port.md | 3 +-- {rfcs => plans}/done/2024-11-25-journal-expiration.md | 1 + {rfcs => plans}/done/2026-02-17-fix-subq-deadlock.md | 1 + rfcs/README.md | 4 ++-- rfcs/done/2026-01-30-send-file-page.md | 1 + .../2026-02-04-xftp-web-browser-transport.md | 1 + .../2026-03-10-agent-protocol.md} | 9 +++++++++ .../2026-03-10-client-certificates.md} | 9 +++++++++ .../2026-03-10-encryption.md} | 9 +++++++++ .../2026-03-10-server-metadata.md} | 9 +++++++++ .../2026-03-10-short-links.md} | 9 +++++++++ .../2026-03-10-smp-blobs.md} | 9 +++++++++ .../2026-03-10-smp-queues.md} | 9 +++++++++ 14 files changed, 71 insertions(+), 4 deletions(-) rename {rfcs => plans}/done/2024-09-01-smp-message-storage.md (99%) rename {rfcs => plans}/done/2024-09-15-shared-port.md (99%) rename {rfcs => plans}/done/2024-11-25-journal-expiration.md (99%) rename {rfcs => plans}/done/2026-02-17-fix-subq-deadlock.md (99%) rename rfcs/{done/2024-06-01-agent-protocol.md => standard/2026-03-10-agent-protocol.md} (63%) rename rfcs/{done/2025-05-05-client-certificates.md => standard/2026-03-10-client-certificates.md} (95%) rename rfcs/{done/2024-02-12-encryption.md => standard/2026-03-10-encryption.md} (85%) rename rfcs/{done/2024-03-20-server-metadata.md => standard/2026-03-10-server-metadata.md} (94%) rename rfcs/{done/2024-06-21-short-links.md => standard/2026-03-10-short-links.md} (94%) rename rfcs/{done/2024-09-09-smp-blobs.md => standard/2026-03-10-smp-blobs.md} (89%) rename rfcs/{done/2025-03-16-smp-queues.md => standard/2026-03-10-smp-queues.md} (97%) diff --git a/rfcs/done/2024-09-01-smp-message-storage.md b/plans/done/2024-09-01-smp-message-storage.md similarity index 99% rename from rfcs/done/2024-09-01-smp-message-storage.md rename to plans/done/2024-09-01-smp-message-storage.md index 1acc32f3b..17e7c9d4a 100644 --- a/rfcs/done/2024-09-01-smp-message-storage.md +++ b/plans/done/2024-09-01-smp-message-storage.md @@ -1,3 +1,4 @@ + # SMP router message storage ## Problem diff --git a/rfcs/done/2024-09-15-shared-port.md b/plans/done/2024-09-15-shared-port.md similarity index 99% rename from rfcs/done/2024-09-15-shared-port.md rename to plans/done/2024-09-15-shared-port.md index 390e9d6c0..0e75def63 100644 --- a/rfcs/done/2024-09-15-shared-port.md +++ b/plans/done/2024-09-15-shared-port.md @@ -1,3 +1,4 @@ + # Sharing protocol ports with HTTPS Some networks block all ports other than web ports, including port 5223 used for SMP protocol by default. Running SMP routers on a common web port 443 would allow them to work on more networks. The routers would need to provide an HTTPS page for browsers (and probes). @@ -65,8 +66,6 @@ The implementation relies on a few modification to upstream code: - `warp`: Only the re-export of `serveConnection` is needed. Unfortunately the most recent `warp` version can't be used right away due to dependency cascade around `http-5` and `auto-update-2`. So a fork containing the backported re-export has to be used until the dependencies are refreshed. - - ### TLS.ServerParams When a router has port sharing enabled, a new set of TLS params is loaded and combined with transport params: diff --git a/rfcs/done/2024-11-25-journal-expiration.md b/plans/done/2024-11-25-journal-expiration.md similarity index 99% rename from rfcs/done/2024-11-25-journal-expiration.md rename to plans/done/2024-11-25-journal-expiration.md index 044512241..ffdb7f528 100644 --- a/rfcs/done/2024-11-25-journal-expiration.md +++ b/plans/done/2024-11-25-journal-expiration.md @@ -1,3 +1,4 @@ + # Expiring messages in journal storage ## Problem diff --git a/rfcs/done/2026-02-17-fix-subq-deadlock.md b/plans/done/2026-02-17-fix-subq-deadlock.md similarity index 99% rename from rfcs/done/2026-02-17-fix-subq-deadlock.md rename to plans/done/2026-02-17-fix-subq-deadlock.md index 9c38e6721..07e4e3643 100644 --- a/rfcs/done/2026-02-17-fix-subq-deadlock.md +++ b/plans/done/2026-02-17-fix-subq-deadlock.md @@ -1,3 +1,4 @@ + # Fix subQ deadlock: blocking writeTBQueue inside connLock ## Problem diff --git a/rfcs/README.md b/rfcs/README.md index 51a450ab0..cf25e0652 100644 --- a/rfcs/README.md +++ b/rfcs/README.md @@ -145,6 +145,6 @@ As more protocols are designated as Core IP, development naturally transitions t |----------|----------|-------| | `protocol/` | Consolidated specs (SMP v19, Agent v7, XFTP v3, XRCP v1, NTF v3, PQDR v1) | 6 specs + overview | | `rfcs/` root | Active draft proposals | 10 | -| `rfcs/done/` | Implemented, not yet verified | 12 | -| `rfcs/standard/` | Verified against implementation | 25 | +| `rfcs/done/` | Implemented, not yet verified | 1 (+10 sub-RFCs) | +| `rfcs/standard/` | Verified against implementation | 31 | | `rfcs/rejected/` | Draft proposals not accepted | 7 | diff --git a/rfcs/done/2026-01-30-send-file-page.md b/rfcs/done/2026-01-30-send-file-page.md index 00ac027ae..9080a784c 100644 --- a/rfcs/done/2026-01-30-send-file-page.md +++ b/rfcs/done/2026-01-30-send-file-page.md @@ -1,3 +1,4 @@ + # Send File Page — Web-based XFTP File Transfer ## 1. Problem & Business Case diff --git a/rfcs/done/2026-01-30-send-file-page/2026-02-04-xftp-web-browser-transport.md b/rfcs/done/2026-01-30-send-file-page/2026-02-04-xftp-web-browser-transport.md index 41915bf64..784627a5a 100644 --- a/rfcs/done/2026-01-30-send-file-page/2026-02-04-xftp-web-browser-transport.md +++ b/rfcs/done/2026-01-30-send-file-page/2026-02-04-xftp-web-browser-transport.md @@ -1,3 +1,4 @@ + # Browser Transport & Web Worker Architecture ## TOC diff --git a/rfcs/done/2024-06-01-agent-protocol.md b/rfcs/standard/2026-03-10-agent-protocol.md similarity index 63% rename from rfcs/done/2024-06-01-agent-protocol.md rename to rfcs/standard/2026-03-10-agent-protocol.md index 616aed33f..896ae825a 100644 --- a/rfcs/done/2024-06-01-agent-protocol.md +++ b/rfcs/standard/2026-03-10-agent-protocol.md @@ -1,3 +1,12 @@ +--- +Proposed: 2024-06-01 +Implemented: ~2024 +Standardized: 2026-03-10 +Protocol: agent-protocol +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Evolving agent API ## Problem diff --git a/rfcs/done/2025-05-05-client-certificates.md b/rfcs/standard/2026-03-10-client-certificates.md similarity index 95% rename from rfcs/done/2025-05-05-client-certificates.md rename to rfcs/standard/2026-03-10-client-certificates.md index 81455fb57..68321256d 100644 --- a/rfcs/done/2025-05-05-client-certificates.md +++ b/rfcs/standard/2026-03-10-client-certificates.md @@ -1,3 +1,12 @@ +--- +Proposed: 2025-05-05 +Implemented: ~2025 (SMP v16) +Standardized: 2026-03-10 +Protocol: simplex-messaging +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Service certificates for high volume routers and services connecting to SMP routers ## Problem diff --git a/rfcs/done/2024-02-12-encryption.md b/rfcs/standard/2026-03-10-encryption.md similarity index 85% rename from rfcs/done/2024-02-12-encryption.md rename to rfcs/standard/2026-03-10-encryption.md index 8ecfcadfa..483da6db8 100644 --- a/rfcs/done/2024-02-12-encryption.md +++ b/rfcs/standard/2026-03-10-encryption.md @@ -1,3 +1,12 @@ +--- +Proposed: 2024-02-12 +Implemented: ~2024 (SMP v11) +Standardized: 2026-03-10 +Protocol: simplex-messaging +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Transmission encryption ## Problems diff --git a/rfcs/done/2024-03-20-server-metadata.md b/rfcs/standard/2026-03-10-server-metadata.md similarity index 94% rename from rfcs/done/2024-03-20-server-metadata.md rename to rfcs/standard/2026-03-10-server-metadata.md index 3e696a8fb..0506c01bd 100644 --- a/rfcs/done/2024-03-20-server-metadata.md +++ b/rfcs/standard/2026-03-10-server-metadata.md @@ -1,3 +1,12 @@ +--- +Proposed: 2024-03-20 +Implemented: ~2024 +Standardized: 2026-03-10 +Protocol: simplex-messaging +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Relay metadata and SimpleX network decentralization ## Problem diff --git a/rfcs/done/2024-06-21-short-links.md b/rfcs/standard/2026-03-10-short-links.md similarity index 94% rename from rfcs/done/2024-06-21-short-links.md rename to rfcs/standard/2026-03-10-short-links.md index 1dd3bf910..3e3e7bf8c 100644 --- a/rfcs/done/2024-06-21-short-links.md +++ b/rfcs/standard/2026-03-10-short-links.md @@ -1,3 +1,12 @@ +--- +Proposed: 2024-06-21 +Implemented: ~2025 (SMP v15) +Standardized: 2026-03-10 +Protocol: simplex-messaging + agent-protocol +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Short invitation links ## Problem diff --git a/rfcs/done/2024-09-09-smp-blobs.md b/rfcs/standard/2026-03-10-smp-blobs.md similarity index 89% rename from rfcs/done/2024-09-09-smp-blobs.md rename to rfcs/standard/2026-03-10-smp-blobs.md index b205d3656..5d81c1ade 100644 --- a/rfcs/done/2024-09-09-smp-blobs.md +++ b/rfcs/standard/2026-03-10-smp-blobs.md @@ -1,3 +1,12 @@ +--- +Proposed: 2024-09-09 +Implemented: ~2025 (SMP v15) +Standardized: 2026-03-10 +Protocol: simplex-messaging + agent-protocol +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Blob extensions for SMP queues Evolution of the design for short links, see [here](./2024-06-21-short-links.md) and [here](./2024-09-05-queue-storage.md). diff --git a/rfcs/done/2025-03-16-smp-queues.md b/rfcs/standard/2026-03-10-smp-queues.md similarity index 97% rename from rfcs/done/2025-03-16-smp-queues.md rename to rfcs/standard/2026-03-10-smp-queues.md index 761d624ba..a9afa23d4 100644 --- a/rfcs/done/2025-03-16-smp-queues.md +++ b/rfcs/standard/2026-03-10-smp-queues.md @@ -1,3 +1,12 @@ +--- +Proposed: 2025-03-16 +Implemented: ~2025 (SMP v15) +Standardized: 2026-03-10 +Protocol: simplex-messaging + agent-protocol +--- + +> **Implementation note:** This RFC was promoted from done/ to standard/ based on verification that the described feature exists in the codebase. The RFC text reflects the original proposal and may not match the actual implementation in all details. The consolidated protocol specifications in `protocol/` are the authoritative reference for current behavior. + # Protocol changes for creating and connecting to SMP queues ## Problems