bvandeusen
e2a358a158
feat: show tool status notifications in chat during generation
...
Parse SSE `status` events alongside `chunk` events and display the
status text next to the spinner while the assistant is generating.
Previously the Android app discarded all non-chunk SSE events.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-06 11:46:42 -04:00
bvandeusen
4919f7a185
feat: wire Calendar route to CalendarScreen
2026-04-06 10:32:53 -04:00
bvandeusen
5b639dbd4c
feat: add CalendarScreen with month strip and agenda list
2026-04-06 10:32:13 -04:00
bvandeusen
334882520c
feat: add EventFormSheet with CRUD, recurrence picker, and color chips
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-06 10:31:08 -04:00
bvandeusen
c4dca6d4ed
feat: add CalendarNotifier and calendarProvider
2026-04-06 10:28:53 -04:00
bvandeusen
776b394874
feat: add EventsApi and eventsApiProvider
2026-04-06 10:27:11 -04:00
bvandeusen
b56c0fc02d
feat: add table_calendar package and CalendarEvent model with tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-06 10:25:52 -04:00
bvandeusen
8a0837a843
docs: add Android Calendar screen implementation plan
2026-04-06 10:17:29 -04:00
bvandeusen
8e5a95b0f2
docs: add Android Calendar screen design spec
2026-04-06 10:01:37 -04:00
bvandeusen
3a07221968
feat: wire News route to NewsScreen
2026-04-06 08:30:08 -04:00
bvandeusen
e7d174cef7
feat: add NewsScreen with feed filter, reactions, and discuss
2026-04-06 08:29:30 -04:00
bvandeusen
f4e39c00eb
fix: use ref.watch in build() and avoid stale snapshot in loadMore catch
2026-04-06 08:26:59 -04:00
bvandeusen
e08a8906e3
feat: add NewsNotifier and feedsProvider
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-06 08:22:24 -04:00
bvandeusen
01ea6b48db
feat: add RssItemMeta.fromNewsItem adapter factory
2026-04-06 08:18:34 -04:00
bvandeusen
b56f3d3a0f
feat: add NewsApi, openArticleInChat, and newsApiProvider
2026-04-06 08:16:00 -04:00
bvandeusen
77fc82af45
feat: add NewsItem and BriefingFeed models with tests
2026-04-06 08:13:06 -04:00
bvandeusen
a2fc0d6c7d
docs: add Android news screen implementation plan
2026-04-06 08:11:12 -04:00
bvandeusen
2a2f9e6e85
docs: add Android news screen design spec
2026-04-06 08:04:18 -04:00
bvandeusen
95d0f529ea
fix: invalidate project tasks on return from task edit screen
2026-04-06 07:15:35 -04:00
bvandeusen
36bc36cd9d
feat: replace Projects tab with More bottom sheet (news/calendar stubs)
2026-04-06 07:14:38 -04:00
bvandeusen
a23af0658a
docs: add Android nav restructure implementation plan
2026-04-06 06:40:06 -04:00
bvandeusen
39d9f7e053
docs: add Android nav restructure + projects staleness fix spec
2026-04-06 06:35:31 -04:00
bvandeusen
29ff9f821a
fix: override record_linux to 1.3.0 for platform interface compatibility
...
record_linux 0.7.2 doesn't implement startStream from record_platform_interface 1.5.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:50:05 -04:00
bvandeusen
1b08b2fd9e
feat(voice): integrate voice mode into Briefing screen
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:47:38 -04:00
bvandeusen
211bf0d658
feat(voice): integrate one-shot voice capture into Quick Capture bar
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:46:34 -04:00
bvandeusen
2231c60bfb
feat(voice): integrate voice mode into Chat screen
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:45:53 -04:00
bvandeusen
81077349a5
feat(voice): add VoiceMicButton animated widget
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:44:55 -04:00
bvandeusen
2cb566336b
feat(voice): add VoiceNotifier with recording, silence detection, and streaming TTS
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:44:21 -04:00
bvandeusen
6e33d74178
feat(voice): add VoiceRepository and provider registration
2026-04-05 14:40:49 -04:00
bvandeusen
c90b0b3d48
feat(voice): add VoiceApi and VoiceStatus model
2026-04-05 14:40:19 -04:00
bvandeusen
e891e8ba52
feat(voice): add record + just_audio dependencies, RECORD_AUDIO permission
2026-04-05 14:39:35 -04:00
bvandeusen
89fe8994fb
docs: add Android Voice I/O implementation plan
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:36:48 -04:00
bvandeusen
3a3f44b00b
docs: add Android Voice I/O design spec
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 14:19:48 -04:00
bvandeusen
d97f7b0ebd
feat(knowledge): wire 4-tab shell, retire LibraryScreen, complete Knowledge View feature
2026-04-05 00:03:23 -04:00
bvandeusen
2ab24a99a8
feat(knowledge): add edit button to ProjectTasksScreen app bar
2026-04-04 23:56:40 -04:00
bvandeusen
e39d31fe43
feat(knowledge): add ProjectsScreen and ProjectEditScreen, sort projects by updated_at
2026-04-04 23:56:18 -04:00
bvandeusen
a50193dbc0
feat(knowledge): update Project model, ProjectsApi sort, and NoteEditScreen noteType support
2026-04-04 23:52:10 -04:00
bvandeusen
f5ba2d25a3
feat(knowledge): add KnowledgeScreen with tabs, search, tag filters, and infinite scroll
2026-04-04 23:50:19 -04:00
bvandeusen
b5d9efa3ec
feat(knowledge): add KnowledgeItemCard widget
2026-04-04 23:49:18 -04:00
bvandeusen
e0b56fc149
feat(knowledge): add KnowledgeNotifier with two-tier pagination state
2026-04-04 23:48:47 -04:00
bvandeusen
535833abfe
test: add KnowledgeItem model unit tests
2026-04-04 23:40:29 -04:00
bvandeusen
deec2318f7
feat(knowledge): add KnowledgeApi, KnowledgeRepository, wire providers
2026-04-04 23:39:43 -04:00
bvandeusen
2920252f13
feat(knowledge): add KnowledgeItem model
2026-04-04 23:38:19 -04:00
bvandeusen
c8cdcbf230
feat(knowledge): add noteType field to Note model, api, repository, provider
2026-04-04 23:37:53 -04:00
bvandeusen
e89626a782
feat(knowledge): add knowledge + projectEdit route constants
2026-04-04 22:55:50 -04:00
bvandeusen
ac4b2359a5
docs: add Knowledge View design spec for Android app
...
Covers four-tab navigation (Briefing/Knowledge/Chat/Projects),
two-tier pagination (50 IDs / 12-item batches), type-aware cards,
bottom sheet type picker, Projects screen with sorted project list,
ProjectEditScreen, and manifest/config checklist.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 22:30:44 -04:00
bvandeusen
23509adfa8
feat: news story cards in Android briefing screen
...
Replaces bare Story-N reaction rows with full NewsCard widgets: source label,
relative timestamp, linked headline, 2-line snippet, and 👍 /👎 reactions.
Reads rss_items from message metadata (requires backend ≥ this sprint).
Adds url_launcher ^6.3.1 for opening article links in the browser.
Adds https/http <queries> entries to AndroidManifest for Android 11+.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-27 00:08:51 -04:00
bvandeusen
399da397da
fix: add release keystore signing to CI to fix self-update installs
...
Without a consistent signing key, each CI build was signed with the
ephemeral debug keystore from the Flutter container — causing Android
to reject updates with INSTALL_FAILED_UPDATE_INCOMPATIBLE.
Secrets stored in repo: RELEASE_KEYSTORE_BASE64, RELEASE_KEYSTORE_PASSWORD,
RELEASE_KEY_ALIAS. CI decodes the keystore and writes key.properties
before building so every release APK is signed identically.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-26 23:41:56 -04:00
bvandeusen
2bdd663719
chore: merge main into dev, keep consolidated ci.yml
2026-03-26 18:18:38 -04:00
bvandeusen
7fce19a37c
feat: silent background polling for briefing screen
...
Timer.periodic every 60s calls silentRefresh() on BriefingNotifier.
silentRefresh() patches AsyncData directly — never triggers AsyncLoading —
so existing content stays on screen while the fetch is in flight.
WidgetsBindingObserver pauses polling when app is backgrounded.
Polling is also skipped while a reply is actively streaming.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-26 17:43:06 -04:00