Commit Graph

3306 Commits

Author SHA1 Message Date
Narasimha-sc 6d69cf9a7c support-bot: add tests for Grok batch dedup and initial response gating
7 new tests covering the duplicate Grok reply fix:
- batch dedup: only last customer message per group triggers API call
- batch dedup: multi-group batches handled independently
- batch dedup: non-customer messages filtered from batch
- initial response gating: per-message responses suppressed during activateGrok
- gating clears: per-message responses resume after activation completes

Update implementation plan test catalog (122 → 129 tests).
2026-04-16 10:55:28 +00:00
Narasimha-sc 1f1777cbe1 support-bot: more improvemets 2026-04-16 10:23:19 +00:00
Narasimha-sc 8c9fe703a2 support-bot: use apiCreateMemberContact and apiSendMemberContactInvitation instead of raw commands
Replace sendChatCmd("/_create member contact ...") and sendChatCmd("/_invite member contact ...")
with the typed API methods added in simplex-chat-nodejs. Update plans and build script accordingly.
2026-04-15 07:17:54 +00:00
Narasimha-sc 1998f9d051 support-bot: implement stateless bot with cards, Grok, team flow, hardening
Complete rewrite of the support bot to stateless architecture:
- State derived from group composition + chat history (survives restarts)
- Card dashboard in team group with live status, preview, /join commands
- Two-profile architecture (main + Grok) with profileMutex serialization
- Grok join race condition fix via bufferedGrokInvitations
- Card preview: newest-first truncation, newline sanitization, sender prefixes
- Best-effort startup (invite link, group profile update)
- Team group preferences: directMessages, fullDelete, commands
- 122 tests across 27 suites
2026-04-15 07:17:54 +00:00
Narasimha-sc afec577ea8 support-bot: update implementation plan 2026-04-15 07:17:54 +00:00
Narasimha-sc 219d946c7a support-bot: update product spec — complete state, /join team-only, card debouncing
- Group preferences applied once at creation, not on every startup
- /join restricted to team group only
- Team/Grok reply or reaction auto-completes conversation ()
- Customer message reverts to incomplete
- Card updates debounced globally with 15-minute batch flush
2026-04-15 07:17:54 +00:00
Narasimha-sc 599e627adb support-bot: review and refine product spec 2026-04-15 07:17:54 +00:00
Narasimha-sc 3f5d69c857 support-bot: update plan 2026-04-15 07:17:54 +00:00
Narasimha-sc 54b6295766 simplex-support-bot: update product design plan 2026-04-15 07:17:54 +00:00
Narasimha-sc e95b46fec1 simplex-support-bot: Update support plan to reflect current flow 2026-04-15 07:17:54 +00:00
Narasimha-sc 0e8adf4dea Further usability improvements 2026-04-15 07:17:54 +00:00
Narasimha-sc 7da9aa932a apps: simplex-support-bot: Change Grok logo 2026-04-15 07:17:54 +00:00
Narasimha-sc 0e97a4e92f apps: support-bot /add command & fixes 2026-04-15 07:17:54 +00:00
Narasimha-sc bbf98376f6 support-bot: Fix basic functionality 2026-04-15 07:17:54 +00:00
Narasimha-sc 8aa1b90b79 apps: support bot relocate 2026-04-15 07:17:54 +00:00
Narasimha-sc 45a100f93e apps: support bot code & tests 2026-04-15 07:17:54 +00:00
Narasimha-sc a314b499d6 Relocate plans 2026-04-15 07:17:53 +00:00
Narasimha-sc 9788994451 plans: Update 20260207-support-bot-implementation.md 2026-04-15 07:17:53 +00:00
Narasimha-sc 0ea86b0c11 plans: 20260207-support-bot-implementation.md 2026-04-15 07:17:53 +00:00
Narasimha-sc ef89932079 Update 20260207-support-bot.md 2026-04-15 07:17:53 +00:00
Narasimha-sc b5e4785f35 plans: 20260207-support-bot.md 2026-04-15 07:17:53 +00:00
sh b5842380f6 gradle: remove obsolete JetBrains Space dev repo causing 503 build failures (#6803) 2026-04-13 17:19:56 +01:00
sh 577b30e72f nix: strip ios library (#6503)
* strip ios like in android

* remove strip-unneeded in mac

* strip only simplex-chat libs

* flake.nix: strip only local symbols in MacOS library

* flake.nix: make libs writable

* flake.nix: better strip placement

* reduce framework size by exporting only public API symbols
2026-04-13 14:40:27 +01:00
Evgeny Poberezkin 0770ecd1d1 6.5-beta.9: android 341, desktop 136 2026-04-12 23:52:02 +01:00
Evgeny Poberezkin 969e6e10bd 6.5-beta.8: ios 326 2026-04-12 23:21:16 +01:00
Evgeny e456da6bc6 ui: translations (#6797)
* desktop: fix chat view processing all mouse move events

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2187 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/

* Translated using Weblate (Italian)

Currently translated at 100.0% (2187 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/it/

* Translated using Weblate (German)

Currently translated at 100.0% (2187 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (2526 of 2526 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ar/

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/zh_Hans/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/

* Translated using Weblate (Italian)

Currently translated at 99.9% (2636 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/

* Translated using Weblate (French)

Currently translated at 87.9% (2319 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/

* Translated using Weblate (French)

Currently translated at 88.6% (2339 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2187 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/hu/

* Translated using Weblate (French)

Currently translated at 91.1% (2403 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/

* Translated using Weblate (Polish)

Currently translated at 100.0% (2187 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/

* Translated using Weblate (German)

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/

* Translated using Weblate (Italian)

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/it/

* Translated using Weblate (Czech)

Currently translated at 56.8% (1244 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/

* Translated using Weblate (Czech)

Currently translated at 56.8% (1244 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/

* Translated using Weblate (Czech)

Currently translated at 95.7% (2526 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (Czech)

Currently translated at 95.7% (2526 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (Czech)

Currently translated at 95.7% (2524 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (Czech)

Currently translated at 95.7% (2524 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (Czech)

Currently translated at 56.9% (1245 of 2187 strings)

Translation: SimpleX Chat/SimpleX Chat iOS
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/cs/

* Translated using Weblate (Czech)

Currently translated at 95.7% (2524 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/cs/

* Translated using Weblate (German)

Currently translated at 100.0% (2637 of 2637 strings)

Translation: SimpleX Chat/SimpleX Chat Android
Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/de/

* fix translations

* process localizations

* improve

---------

Co-authored-by: summoner001 <summoner@disroot.org>
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org>
Co-authored-by: mlanp <github@lang.xyz>
Co-authored-by: jonnysemon <jonnysemon@users.noreply.hosted.weblate.org>
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate user 146276 <distubed_orange@users.noreply.hosted.weblate.org>
Co-authored-by: Omikorin <git@omikor.in>
Co-authored-by: slrslr <adm@prnet.info>
Co-authored-by: zenobit <zenobit@disroot.org>
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-04-12 22:54:56 +01:00
Evgeny Poberezkin 080a4c2f46 ios: update library 2026-04-12 18:07:00 +01:00
Evgeny Poberezkin 317bb5388b ios: fix syntax 2026-04-12 11:08:51 +01:00
Evgeny 01c9343cdd desktop: use text pointer for text selection (#6787)
* desktop: use text pointer for text selection

* do not clear selection on ctrl-c

* crlf

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-04-11 20:13:32 +01:00
Evgeny 6f21826579 core, ui: chat item to show message error (#6785)
* core: chat item to show message error

* ui: chat item for removed messages

* remove local maven repo

* command to test dropped messages

* update nix config

* show parse errors

* error texts, simplexmq

* alert messages

* simplexmq, alert

* better parsing

* better parsing

* simplify

* correct message

* remove test api

* do not check size twice, bot types

* send error in relays

* do not create error item in relays

* diff

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-04-11 19:40:33 +01:00
sh 9f1ff78d1a desktop: fix nanohttpd jitpack dependency (#6784)
Jitpack stopped serving nanohttpd under the 10-char commit
hash efb2ebf85a (returns 404), while the 7-char short hash
efb2ebf resolves to the same commit and jars. Switch to the
short form to unbreak desktopCompileClasspath.
2026-04-11 09:55:20 +01:00
spaced4ndy 75d62b08ca ui: group service events channel texts (#6781) 2026-04-10 18:25:06 +00:00
Evgeny Poberezkin 393e11c0c4 6.5-beta.8: ios 325 2026-04-10 19:15:33 +01:00
SimpleX Chat 98f1942638 6.5-beta.8: android 340, desktop 135 2026-04-10 17:09:49 +01:00
spaced4ndy 24435f5b74 ui: fix edit channel profile texts (#6766) 2026-04-09 18:44:23 +00:00
Evgeny Poberezkin 4d267b6ca1 6.5-beta.7: android 339, desktop 134 2026-04-04 21:28:09 +01:00
Evgeny Poberezkin de09eca6ab ios: 6.5-beta.7 (build 324) 2026-04-04 20:32:23 +01:00
Evgeny Poberezkin 825a63d3d2 ios: update core library 2026-04-04 19:38:44 +01:00
Evgeny 63682f9141 ui: "create public channel" labels (#6749) 2026-04-04 18:04:01 +01:00
Evgeny Poberezkin ef57d84479 desktop: fix chat view processing all mouse move events 2026-04-04 17:17:04 +01:00
Evgeny Poberezkin 67c5d75633 Merge branch 'master' into chat-relays 2026-04-03 21:25:41 +01:00
Evgeny 4545fdd0a9 desktop: support sending voice messages, use shared VLC media-player factory (#6739)
* desktop: support sending voice messages

* alert for unsupported platforms

* dont record on error

* better initialization

* desktop: use shared VLC media-player factory (#6741)

* desktop: use shared VLC media-player factory

* fix factory

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-04-03 21:24:08 +01:00
Narasimha-sc bcdc8effe5 fix: jump to quoted message in search and content filter (#6721)
* fix: jump to quoted message in search and content filter

When tapping a quoted message during search or content filter,
scrollToItem bailed out silently instead of navigating to the message.
Load around the target without search/filter params using
openAroundItemId, which closes search/filter and positions at the
target.

Fixes the overly broad guard added in 219381f9 (#5315).

* remove logs

---------

Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
2026-04-03 21:22:51 +01:00
Evgeny 8167f7c2ab core: add fields to chat relay profiles; remove unique name requirement; update relay profile in relay address link data (#6743)
* core: add fields to chat relay profiles

* wip

* wip

* fix

* fix

* fix

* enable tests

* schema

* api

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2026-04-03 12:42:43 +00:00
spaced4ndy 0ca7cdaf1d Merge branch 'master' into chat-relays 2026-04-03 14:08:46 +04:00
Evgeny bb6fb8f2e9 desktop: select text in messages (#6725)
* desktop: text selection plan

* update the plan

* desktop: text selection

* improve

* state management

* fix selection tracking

* rewrite

* revert

* update plan

* new implementation

* fix

* fix 2, logs

* fix 3, logging

* better cursor position

* fix last character highlight and one-line message selection

* fix copied text

* fix copy order for multi-message copy

* position copy button

* better copy button position

* moare better

* copy position

* condition

* debug copy

* comment more

* copy button fix

* minor fixes

* fix ranges

* refactor

* clip copy button

* refactor 2

* refactor 3

* clean up

* refactor event handling

* toast on copy

* copy actual message text with links

* move copy button in z-order

* move more

* try alignment

---------

Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com>
2026-04-02 22:32:00 +01:00
spaced4ndy a14a66db14 core, ui: chat relay test (#6736) 2026-04-02 15:36:36 +00:00
spaced4ndy 42fe94752c core, ui: public group profile wip (#6734) 2026-04-01 14:17:27 +00:00
Narasimha-sc 3f86a7bb62 ui: fix filter button appearing before call buttons during active call (#6733)
During an active call, the content filter button appeared before the
call timer and end call button in the toolbar. Move the content filter
button after chat-type specific buttons so call controls always appear
first.
2026-03-31 21:39:55 +01:00
spaced4ndy dfd8e224f6 core, ui: prohibit to invite contact to channel (#6731) 2026-03-31 11:31:09 +00:00