From af378e7d71895893b2cefa27727081b946cfddee Mon Sep 17 00:00:00 2001 From: JakeBreath Date: Wed, 23 Sep 2026 18:29:49 -0500 Subject: [PATCH] Update the roadmap for cacheable media and session-only completions --- ROADMAP.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index 5c70504..ae263f6 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -20,6 +20,13 @@ they land. - [x] Tag cloud in the sidebar (click to search, hidden from guests for blacklisted items) - [x] Status filter (matched / not_found / deleted / custom / unknown) +- [x] **Cacheable media serving** + - [x] Stable signed URLs (7 d TTL, 24 h rotation) plus a `v=` cache + buster, so replacing a file under the same J-ID invalidates it + - [x] ETag/Last-Modified and a private `Cache-Control` (immutable for + versioned media), conditional 304s + - [x] Real 480 px image thumbnails (cached by MD5) instead of serving + full-size originals through the thumbnail endpoint - [x] **Random image** endpoint and page: `GET /api/random/` (aliases `/random`, `/random/`) with `rating=s,q,e` filters; fastfetch mode @@ -104,12 +111,16 @@ Files now stage first and are resolved before entering the library. shell indicator; rate-limited runs retry with backoff - [x] Perceptual-hash comparison against the library, loaded once per batch - [x] IQDB candidates stored with one batched enrichment request + - [x] Indexed uploads are announced through a bounded per-run feed and the + staged row is deleted; nothing persists on the board to dismiss - [x] **Upload UI** - - [x] Three-column board: Pending & Unmatched / Visual Similarity Detected / - Auto-uploaded & Indexed, private per user (staff included) + - [x] Four-column board: Pending & Unmatched / Visual Similarity Detected / + Auto-uploaded & Indexed (session feed) / Failed, private per user + (staff included) - [x] Metadata modal (link to e621 post, IQDB candidates, custom metadata) - [x] Per-file progress plus background pipeline status - - [x] Bulk actions: bulk rate, discard all (pending/visual), dismiss all + - [x] Bulk actions: bulk rate and discard all (chunked past the API's + 1000-id cap) ## 4. Staff tools