kaizen-app/app/src/main/res/values
Bruno Deanoz 76ab8bfde9 feat: reasoning, sources, and tool-call display
StreamConsumer.Incremental now returns StreamState (content, reasoning,
tools, query, sources) instead of just visible text. All sentinel sections
are parsed and structured:
- \x01 REASONING: captured as separate string
- \x02 SOURCES: parsed as List<SearchSource> (title, url, snippet)
- \x03 TOOL: parsed as List<ToolEvent> (type, name, args, result, elapsed)
- \x04 QUERY: captured as search query string

UI components:
- ReasoningBlock: collapsible "Gedankengang" with expand/collapse animation
- ToolEventsBlock: shows tool-call steps with status icons (start/end/error)
- SourcesBlock: web search sources as compact cards with domain extraction

Message model extended with reasoning, tools, query, sources fields.
KaizenApi.chat() returns Flow<StreamState> instead of Flow<String>.
ChatScreen wires all fields to Message during streaming.

Fixed: empty append() on Incremental no longer prematurely ends tool phase.
StreamConsumerTest rewritten to verify all parsed sections.
2026-06-21 15:35:46 +02:00
..
colors.xml Fix send crash (VIBRATE permission), add light/dark theme, redesign send button, group hero to fix keyboard reflow 2026-06-18 15:39:27 +02:00
strings.xml feat: reasoning, sources, and tool-call display 2026-06-21 15:35:46 +02:00
themes.xml feat: Kaizen orb app icon — light/dark backgrounds, monochrome, splash 2026-06-21 15:22:28 +02:00