Files
NomadArch/tasks/done/048-message-stream-refactor.md
Gemini AI 1d427f4cf5
Some checks failed
Release Binaries / release (push) Has been cancelled
v0.5.0: NomadArch - Binary-Free Mode Release
Features:
- Binary-Free Mode: No OpenCode binary required
- NomadArch Native mode with free Zen models
- Native session management
- Provider routing (Zen, Qwen, Z.AI)
- Fixed MCP connection with explicit connectAll()
- Updated installers and launchers for all platforms
- UI binary selector with Native option

Free Models Available:
- GPT-5 Nano (400K context)
- Grok Code Fast 1 (256K context)
- GLM-4.7 (205K context)
- Doubao Seed Code (256K context)
- Big Pickle (200K context)
2025-12-26 11:27:03 +04:00

2.0 KiB

Task 048 - Message Stream & Tool Call Refactor

Goal

Finish migrating the message stream container, tool call blocks, and reasoning UI to Tailwind utilities and shared tokens.

Prerequisites

  • Tasks 045-047 complete (message item, prompt input, and tabs refactored).

Acceptance Criteria

  • src/components/message-stream.tsx, src/components/message-part.tsx, and tool call subcomponents no longer depend on legacy classes (.message-stream, .tool-call-message, .tool-call, .tool-call-header, .tool-call-preview, .tool-call-details, .reasoning-*, .scroll-to-bottom, etc.).
  • Global CSS definitions for these selectors are removed from src/index.css, replaced by Tailwind utilities and token-aware helpers.
  • Scroll behavior (auto-scroll, “scroll to bottom” button) and collapsing/expanding tool calls behave as before in light/dark modes.
  • Markdown/code blocks continue to render properly within the new layout.

Steps

  1. Inventory remaining global selectors in src/index.css associated with the stream/tool-call UI.
  2. Update component markup to use Tailwind classes, creating shared helpers in src/styles/components.css when patterns repeat.
  3. Remove or rewrite the corresponding CSS blocks in src/index.css to avoid duplication.
  4. Validate tool call states (pending/running/success/error), reasoning blocks, and markdown rendering visually.

Testing Checklist

  • Run npm run build.
  • In dev mode, stream a message with tool calls and reasoning to ensure toggles and scroll helpers work.

Dependencies

  • Depends on prompt input and tab refactors to reduce merge conflicts.
  • Unlocks subsequent layout cleanups for logs and empty states.

Estimated Time

1.25 hours

Notes

  • Branch suggestion: feature/task-048-message-stream-refactor.
  • Capture short screen recording or screenshots if tool call layout adjustments were required.
  • Legacy message-stream.tsx has since been replaced by message-stream-v2.tsx using the normalized message store.