Hy4ri
f0c2d2f87b
refactor(util): extract FormatUtils and deduplicate byte formatting
...
Consolidate formatBytes and formatDuration into util/FormatUtils.
Use in SystemScreen and MemoryScreen, backed by unit tests.
2026-09-11 17:48:13 +03:00
Hy4ri
7b198fa6d6
fix(chat): restore pending approval guard, tighten encapsulation, drop dormant tracker
2026-09-11 00:21:06 +03:00
Hy4ri
3e012dbf31
refactor(chat): extract rpc request tracker with tests
2026-09-11 00:03:54 +03:00
Hy4ri
280a03ea23
refactor(chat): extract model switch delegate with tests
2026-09-11 00:03:46 +03:00
Hy4ri
9d35bf7cdc
refactor(chat): extract credential prompts delegate with tests
2026-09-11 00:03:42 +03:00
Hy4ri
54dbb99a3d
refactor(chat): extract approvals delegate with tests
2026-09-11 00:03:36 +03:00
Hy4ri
10f7e9fa3c
fix(tool): satisfy ktlint formatting
2026-09-10 22:48:43 +03:00
Hy4ri
065dd87d07
test(tool): pin tool-display engine behavior with characterization suite
2026-09-10 21:46:09 +03:00
M57
ae2d0d8494
Merge branch 'dev' into fix/rotation-preserve-connection
2026-09-06 18:21:43 +03:00
AlexDev_
487d8d1feb
fix(lifecycle): preserve connection across activity recreation
2026-09-06 14:24:50 +02:00
AlexDev_
7223c60a97
fix(notification): defer shutdown until foreground promotion
2026-09-06 14:24:41 +02:00
M57
1135f05011
refactor(sessions): show job name in automation groups and preserve action labels
2026-09-05 23:02:46 +03:00
AlexDev_
acc9c7ce9a
feat(sessions): separate conversation and automation history
2026-09-05 19:55:57 +02:00
M57
ad34a51846
Merge branch 'dev' into fix/bounded-attachment-dispatch
2026-09-05 16:34:36 +03:00
M57
aff1b7ed3a
fix(chat): use runtime session ID in approval RPCs to prevent 4001 session not found
2026-09-05 13:15:08 +03:00
AlexDev_
89a14eb765
fix(chat): bound attachment encoding and recover rejected sends
2026-09-05 12:04:03 +02:00
M57
5ce01e429b
fix(bidi): isolate leading and inline English words in RTL paragraphs
...
- In parseInlineSource, wrap consecutive Latin/LTR tokens in LTR isolates (LRI...PDI)
when rendering inside an RTL block, preventing leading English terms like "Okay"
from flipping paragraph layout direction and causing BiDi line shuffling.
- Switch textDirection from TextDirection.ContentOrRtl to explicit TextDirection.Rtl
when isRtl is true across MarkdownText, ChatBubble, and GroupChatScreen, preventing
first-strong character fallbacks from overriding resolved paragraph direction.
2026-09-04 23:22:22 +03:00
M57 and Luna
1126cf1477
feat(group-chat): add ephemeral visual pass indicator when bot passes turn
...
- Display a subtle centered system pill '[⏩ {bot} passed]' when a bot passes
- Style with Material icon (Icons.Filled.FastForward) and surface tokens
- Keep pass indicators strictly ephemeral to avoid polluting LLM prompt context
- Exclude from cross-device snapshot sync so it disappears on restart/rehydrate
- Add English and Arabic localized string resources
- Update GroupChatViewModelTest to verify pass indicator presence and LLM filtering
Co-authored-by: Luna <luna.m57@agentmail.to >
2026-09-04 15:20:56 +03:00
M57
7ae8977dc3
feat(group-chat): expand tool execution details and terminal output preview ( #1058 )
2026-09-04 14:52:15 +03:00
M57
bd0b4c2d55
feat(chat): full approval.request support ( #1057 )
2026-09-03 22:33:15 +03:00
M57
077ad1fa81
feat(chat): full sudo.request support with expire, cancel-unblock, secret fields ( #1056 )
2026-09-03 22:08:07 +03:00
M57
6d2362ba8a
feat(chat): support multi-select, batch multi-question clarify prompts, and expiry ( fixes #1045 ) ( #1055 )
2026-09-03 21:38:57 +03:00
M57
b3439d87c9
feat(chat): support /undo command with transcript reload and composer prefill ( #1051 )
2026-09-03 19:04:43 +03:00
M57
efe6fe81cb
fix(chat): support confirmation dialog when switching to expensive or data-policy models ( #1050 )
2026-09-03 16:56:08 +03:00
M57
fb80be04b4
feat(bots): increase group chat limits to 50/20 with warning banner and confirmation dialog ( #1049 )
2026-09-03 15:41:22 +03:00
M57
78e104f432
feat(bots): add horizontal @ mention suggestion chip bar in group chat ( #1048 )
2026-09-03 14:38:09 +03:00
M57
cd8c27e62b
feat(chat): support dynamic BiDi Arabic input and isolated mixed text in Markdown ( #1047 )
2026-09-03 13:06:03 +03:00
M57
fa17c95296
fix(chat): support batch clarify.request payload and route question_id on respond ( fixes #1045 ) ( #1046 )
2026-09-03 12:50:13 +03:00
M57
dbd7008ee3
feat(chat): support non-Google speech-to-text providers ( fixes #1038 ) ( #1042 )
2026-09-02 12:31:42 +03:00
M57
6ec277af8b
feat(mcp): MCP dashboard enhancements — JSON config import, token overhead badges, and batch health testing ( #1037 )
2026-09-01 20:18:45 +03:00
M57
d8385a2b02
feat(ws): adopt WS ping method for heartbeat and latency tracking ( #1036 )
2026-09-01 19:44:39 +03:00
M57 and M57
21db9bfdab
fix(memory): scope memory endpoints to active profile and auto-reload on profile switch ( #1035 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-09-01 19:20:18 +03:00
M57 and M57
11dd1eff92
feat(chat): live subagent steering and cancellation action sheet ( closes #1030 ) ( #1034 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-09-01 18:19:00 +03:00
M57 and M57
908255f5ad
feat: support session-level hidden flag in SessionListResponse and SessionsScreen ( #1033 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-09-01 16:56:28 +03:00
M57 and M57
ceb4813218
feat(chat): support hierarchical nested subtasks in Todos via parent property ( #1018 ) ( #1028 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-31 22:09:15 +03:00
M57 and M57
3fd9ac767f
feat(ws): adopt event replay via session.events.since on reconnect ( #1016 ) ( #1027 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-31 19:32:17 +03:00
M57 and M57
53c8eca714
feat: adopt side-questions via prompt.btw and /btw command in Chat ( fixes #1015 ) ( #1026 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-31 15:54:09 +03:00
M57 and M57
cfe3e736fd
chore: upgrade ktlint to 1.8.0 and format codebase ( #1024 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-31 12:27:40 +03:00
M57
ad838f696e
chore: add missing imports and fix test closing brace
2026-08-31 11:24:45 +03:00
Hy4ri
d8e3992c33
fix: memory screen reset actions serialization error ( fixes #1020 )
2026-08-31 11:10:26 +03:00
M57
cdcecb9734
feat(profiles): add local on-device profile hiding and filtering
2026-08-30 20:51:06 +03:00
M57 and M57
97b6641d84
feat(bots): emergency stop button and /stop slash command in group chat ( #1012 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-30 00:02:16 +03:00
M57 and M57
fbe602cb4f
feat(bots): lightweight tool execution indicators in group chat ( #1008 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-29 19:11:14 +03:00
M57 and M57
0d09f43469
feat(bots): reactive multi-agent group chat orchestration with CAS leasing ( #1007 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-29 18:44:08 +03:00
M57 and M57
7e24f5eba3
fix(bots): sync cross-device group chats and roster from desktop projection ( #1006 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-29 13:56:40 +03:00
M57 and M57
5bc6e5f855
feat(settings): in-app chat font size setting ( #1004 ) ( #1005 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-29 11:36:56 +03:00
M57 and M57
db3f8c736e
feat(markdown): support variable-length code fences and nested codeblocks ( #1003 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-28 20:27:17 +03:00
M57 and M57
7a2c453f58
fix(history): guard fluid pagination against infinite network loop on small session lists ( #1002 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-28 19:44:28 +03:00
M57 and M57
2332bdd5d5
feat(nav): root swipe-back on chat with double-back exit and subpage hierarchy ( #1001 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-28 18:38:01 +03:00
M57 and M57
f04d878358
feat(bots): add multi-agent group chat collaboration room ( #998 )
...
Co-authored-by: M57 <hy4ri@users.noreply.github.com >
2026-08-28 17:50:37 +03:00