Release v26.04.13.2 #20

Merged
bvandeusen merged 0 commits from dev into main 2026-04-13 19:00:37 -04:00
bvandeusen commented 2026-04-13 19:00:28 -04:00 (Migrated from git.fabledsword.com)

Summary

  • feat(chat): tool-call chips and live peek status — chat and briefing bubbles now render the same tool-use status line and tool-call chips as the web app. Parses new tool_call SSE events and stores them on Message.toolCalls.
  • feat(chat): tappable tool-call chips — chips for notes, tasks, events, and projects are now wrapped in an InkWell and navigate to the created entity. Read-only tools stay visible but non-tappable.
  • feat(chat): stall watchdog + pull-to-refresh — SSE loop replaced with StreamIterator + 45s per-event timeout to catch silently-dropped mobile sockets. Added RefreshIndicator to the message list and an AppBar refresh button with inline spinner feedback. refresh() also clears isStreaming when the server-side message is complete, unfreezing the input after a stuck stream.
## Summary - **feat(chat): tool-call chips and live peek status** — chat and briefing bubbles now render the same tool-use status line and tool-call chips as the web app. Parses new `tool_call` SSE events and stores them on `Message.toolCalls`. - **feat(chat): tappable tool-call chips** — chips for notes, tasks, events, and projects are now wrapped in an `InkWell` and navigate to the created entity. Read-only tools stay visible but non-tappable. - **feat(chat): stall watchdog + pull-to-refresh** — SSE loop replaced with `StreamIterator` + 45s per-event timeout to catch silently-dropped mobile sockets. Added `RefreshIndicator` to the message list and an AppBar refresh button with inline spinner feedback. `refresh()` also clears `isStreaming` when the server-side message is complete, unfreezing the input after a stuck stream.
This repo is archived. You cannot comment on pull requests.
No Reviewers
No Label
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bvandeusen/FabledApp#20