From 930b8bb800d8149ce29a881ba4c5d9f424580434 Mon Sep 17 00:00:00 2001 From: Bradley Axen Date: Fri, 25 Sep 2026 08:09:44 -0700 Subject: [PATCH] docs(vision): add /buzz/v1 read endpoints to the protocol contract (#7879) Adds a short paragraph to the Protocol section of `VISION.md` about `/buzz/v1` endpoints, which are backend-for-frontend (BFF) reads. - **Dividing line:** every write is a signed Nostr event. Nostr reads must cover all of that state. `/buzz/v1/...` can add reads shaped for specific use cases (thread catch-up, sync) over the same store. - We start with this rule and refine it as more exceptions come up. --- VISION.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/VISION.md b/VISION.md index 900e5a9475..96491c7c65 100644 --- a/VISION.md +++ b/VISION.md @@ -74,6 +74,8 @@ Buzz extends the standard Nostr event format with custom kind numbers for enterp New message type? New kind integer. Zero breaking changes. +**The conversation is Nostr; Buzz adds accessories around it.** Messages, threads, reactions, and the rest of the conversation are signed Nostr events, and Nostr reads must cover all of that state, so a standards-leaning Buzz client stays possible. Around it, the relay serves accessories that don't fit that shape: Blossom media, git smart HTTP, workflow webhooks, derived unread counts, and namespaced `/buzz/v1/...` endpoints for backend-for-frontend reads (thread catch-up, sync) over the same authoritative store. We start with this rule and refine it as more cases show up. + --- ## Architecture