Fetching metadata from the HF Docker repository...
May 4 17:12 fix: proxy must stream SSE bodies (was buffering with text()) 16:53 fix: don't show spurious 'Empty response' error after done/rejected 16:49 fix: streaming race β keep Thinking until first token, fall back to JSON when backend doesn't honour stream=true 16:43 feat: streaming + multi-turn + view source + doc-scoped + UX fixes β - Streaming: SSE consumer hits /ask_smart with stream=true, tokens
fill the answer incrementally; spinner clears as soon as first
token arrives
- Multi-turn: last 5 successful QβA pairs sent as `history` so the
model can resolve "and the third one?" / pronoun references
- View source modal: clicking a source chip opens a drawer with the
full markdown of the doc (rendered via react-markdown with the
same atelier styles)
- Doc-scoped: pinnedDocId on conversation; pinning an entry from the
Documents page opens a new scoped conversation, follow-ups go to
/ask (retrieval bypass). Composer shows a removable "π scoped"
chip and adapts its placeholder
- Inline citations: [1] [2] markers in the answer become clickable
badges that open the source drawer
- Reject UX: in `rejected_low_similarity` the source list is
re-labelled "Closest matches Β· all below similarity X" and
collapsed by default
- Layout: AppShell locked to viewport (h-screen + overflow-hidden +
min-h-0), Thβ¦ 16:10 ux: mobile sidebar, stop, rename, hotkeys, sync timestamp + 8 more β Critical
- Mobile: sidebar slides in as drawer + scrim; toggle always visible
- Composer: Stop button mid-flight (AbortController), aborted turns
surface as soft "Request stopped" instead of error
- Sidebar: double-click or β icon β inline rename (Enter to commit)
- Keyboard: βK (focus composer), βN (new conversation), β/ (sidebar)
UX
- Sidebar: search input + Today/Yesterday/Last 7d/30d/Earlier groups
- Tab title reflects active conversation
- TopBar sync badge: "Saved 12s ago" timestamp (5min visibility window)
- Composer: settings-diff chip surfaces non-default params
- Spec sheet: collapsed by default (just total), expand-to-see-all
- Settings drawer: Common (scaler, sim) / Advanced (everything else)
- Empty state: rotating sample chips + live doc count from /health
- User message: dropped redundant "U" avatar 13:05 revert: restore Twilight Atelier (drop Risograph Folio) 12:57 redesign: Risograph Folio β printed-publication aesthetic β Trade dark-mode AI dashboard for a magazine: warm parchment paper,
halftone dot field, riso-style rust accent, Fraunces italic display
with SOFT/WONK axes, IBM Plex Sans body, JetBrains Mono folio
chrome. Editorial moves throughout:
- Top: thin issue strip + masthead (Vol. I Β· Issue 02 Β· Etiya BSS)
- Sidebar: catalog with numbered conversation entries (β 01 β¦)
- Empty state: huge italic display "Pose a question." with lede +
margin notes column
- Chat: transcript layout (margin folio | content column), assistant
answers carry rust drop-cap, bibliography for sources, colophon
for spec sheet
- Documents: library catalog with 4-digit folio numbers
- System: colophon page with halftone-textured pull-quote panels and
inverted ink Eval issue review
- Decoration: register marks (β) at page corners, hairline rules,
italic-on-hover links 12:44 redesign: Twilight Atelier β full chat-app shell β - New aesthetic: deep indigo-canvas + warm amber accent + aurora gradient
+ Instrument Serif italic display moments + Manrope UI + JetBrains Mono
- Chat-first home: sidebar with conversation history, sticky composer,
thinking indicator, grounding pill, source chips with similarity ring,
settings drawer (advanced params)
- Conversations persist in localStorage (Zustand persist)
- Documents + System pages redesigned in same shell
- Drop legacy /ask, /components/feature, nav, ui β replaced by /components/chat 11:21 Remove claude-mem CLAUDE.md noise from deployed Space 11:20 Deploy: 2026-05-04T11:20:23Z