The ThinkingBlock component existed but was dead code — the backend silently discarded all <think chunks. Now emits thinking SSE events so the UI can display AI reflections in real-time. \xe2\x98\x85 Generated with Crush Assisted-by: GLM-5-Turbo via Crush <crush@charm.land>