From 6426ce273c4394e099c8453d441d47b8372caacd Mon Sep 17 00:00:00 2001 From: greenart7c3 <115044884+greenart7c3@users.noreply.github.com> Date: Mon, 2 Feb 2026 15:10:26 -0300 Subject: [PATCH 1/2] Fix links to the buds folder --- implementations/local-blossom-cache.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/implementations/local-blossom-cache.md b/implementations/local-blossom-cache.md index 1aa3168..e0f8a23 100644 --- a/implementations/local-blossom-cache.md +++ b/implementations/local-blossom-cache.md @@ -26,7 +26,7 @@ If an implementation needs to add access control, it SHOULD restrict access base ## Blob Retrieval -The server MUST implement the `GET /` and `HEAD /` endpoints as defined in [BUD-01](./01.md#get-sha256---get-blob): +The server MUST implement the `GET /` and `HEAD /` endpoints as defined in [BUD-01](../buds/01.md#get-sha256---get-blob): 1. The server MUST accept optional file extensions in the URL (e.g., `/.pdf`) 2. The server MUST set appropriate `Content-Type` headers or default to `application/octet-stream` @@ -60,7 +60,7 @@ When the server receives a request with proxy hints and the blob is not in the l 1. The server SHOULD attempt to retrieve the blob from the servers specified in the `xs` parameters 2. If `xs` hints fail, the server MAY attempt to retrieve the blob using the `as` parameters by: - - Fetching the author's [BUD-03](./03.md) server list (`kind:10063`) + - Fetching the author's [BUD-03](../buds/03.md) server list (`kind:10063`) - Attempting to retrieve the blob from servers in the author's list 3. If the blob is successfully retrieved, the server SHOULD: - Cache the blob locally for future requests @@ -71,7 +71,7 @@ This proxy functionality allows the local cache server to act as a transparent p ## CORS Headers -The server MUST set the `Access-Control-Allow-Origin: *` header on all responses to ensure compatibility with web applications, as specified in [BUD-01](./01.md#cross-origin-headers). +The server MUST set the `Access-Control-Allow-Origin: *` header on all responses to ensure compatibility with web applications, as specified in [BUD-01](../buds/01.md#cross-origin-headers). ## Use Cases From bf76b16fd98abce0d0e4782ba3ba0e5ce849748c Mon Sep 17 00:00:00 2001 From: greenart7c3 <115044884+greenart7c3@users.noreply.github.com> Date: Mon, 2 Feb 2026 15:11:50 -0300 Subject: [PATCH 2/2] Fix links to buds folder --- implementations/hls-video-formatting.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/implementations/hls-video-formatting.md b/implementations/hls-video-formatting.md index f708d8d..e71311e 100644 --- a/implementations/hls-video-formatting.md +++ b/implementations/hls-video-formatting.md @@ -1,6 +1,6 @@ # HLS Video Formatting -This document explains how to format [HLS](https://datatracker.ietf.org/doc/html/rfc8216) (HTTP Live Streaming) videos to be compatible with [BUD-01](./01.md) blob retrieval. +This document explains how to format [HLS](https://datatracker.ietf.org/doc/html/rfc8216) (HTTP Live Streaming) videos to be compatible with [BUD-01](../buds/01.md) blob retrieval. ## Overview @@ -9,7 +9,7 @@ HLS videos consist of multiple files: - Variant playlists (`.m3u8`) that reference media segments - Media segment files (typically `.ts` files) -Each file MUST be uploaded as a separate blob and referenced by its SHA256 hash using the [BUD-01](./01.md#get-sha256---get-blob) `GET /` endpoint format. +Each file MUST be uploaded as a separate blob and referenced by its SHA256 hash using the [BUD-01](../buds/01.md#get-sha256---get-blob) `GET /` endpoint format. ## Relative Paths @@ -58,7 +58,7 @@ cd2a98d055eef5ec3aca73bd136a40340539138da73144d589d9de5a3a52149a.ts ## Media Segments -Media segment files (typically `.ts` files) MUST be uploaded as separate blobs. Each segment MUST be retrievable via the [BUD-01](./01.md#get-sha256---get-blob) `GET /` endpoint. +Media segment files (typically `.ts` files) MUST be uploaded as separate blobs. Each segment MUST be retrievable via the [BUD-01](../buds/01.md#get-sha256---get-blob) `GET /` endpoint. The server SHOULD set the `Content-Type` header appropriately: - `.ts` files: `video/mp2t` or `video/MP2T` @@ -68,7 +68,7 @@ The server SHOULD set the `Content-Type` header appropriately: When generating HLS playlists for Blossom: -1. Upload each media segment as a separate blob using [BUD-02](./02.md#put-upload---upload-blob) `PUT /upload` +1. Upload each media segment as a separate blob using [BUD-02](../buds/02.md#put-upload---upload-blob) `PUT /upload` 2. Upload each variant playlist as a separate blob 3. Upload the master playlist as a separate blob 4. In all playlists, use relative paths containing only the SHA256 hash (and optional file extension) of the referenced blob @@ -88,8 +88,8 @@ Example client flow: When serving HLS playlists, servers MUST: 1. Return the playlist content with the appropriate `Content-Type` header (`application/vnd.apple.mpegurl` or `application/x-mpegURL`) -2. Serve playlists via the [BUD-01](./01.md#get-sha256---get-blob) `GET /` endpoint -3. Support optional file extensions (e.g., `/.m3u8`) as specified in [BUD-01](./01.md#get-sha256---get-blob) +2. Serve playlists via the [BUD-01](../buds/01.md#get-sha256---get-blob) `GET /` endpoint +3. Support optional file extensions (e.g., `/.m3u8`) as specified in [BUD-01](../buds/01.md#get-sha256---get-blob) When a client requests a playlist blob, the server MUST return the playlist content as-is, without modifying relative paths. The client is responsible for resolving relative paths to absolute URLs using the current server's base URL.