spaced4ndy
424b869750
core: don't save owner key as passed by relay, if owner record doesn't exist ( #6806 )
2026-04-14 11:15:12 +00:00
spaced4ndy
79a9860159
core: fix group link update overwriting owners ( #6804 )
...
* core: fix group link update overwriting owners
* fix
* rename
2026-04-14 10:02:02 +01:00
Evgeny
673f5e374b
core: refactor unnecessary functions away ( #6796 )
...
* core: refactor unnecessary functions away
* fix
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-13 09:21:14 +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
spaced4ndy
7194755f8d
core: fix channel profile updates breaking link ( #6762 )
2026-04-09 10:23:46 +00:00
Evgeny
5050e4858e
core: preset chat relays ( #6748 )
...
* core: preset chat relays
* refactor
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-04-04 16:50:07 +01:00
spaced4ndy
b690f89a99
core: don't create member announcement chat item in channels ( #6744 )
2026-04-03 16:31:31 +00: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
5241a2d7f3
core: fix withStore usage in subscriber
2026-04-02 21:13:23 +04: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
spaced4ndy
dfd8e224f6
core, ui: prohibit to invite contact to channel ( #6731 )
2026-03-31 11:31:09 +00:00
spaced4ndy
eddb42bd63
core: fix ghost channel record in chat list on failed/cancelled channel creation ( #6728 )
2026-03-30 12:42:28 +00:00
spaced4ndy
929783eb6c
core: relay key and member id as immutable relay link data ( #6713 )
2026-03-30 10:48:39 +00:00
Evgeny
1e042718a3
core: shared group ID in group profile for relayed groups ( #6716 )
...
* rfc: add shared group ID to profile (the same as linkEntityId and sha256(rootKey))
* implement group ID
* fix
* update simplexmq
* line
* toGroupKeys
* fix test
* fix bot api
* check group ID in other cases
* fix
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-03-30 08:25:54 +00:00
spaced4ndy
30386178ec
Revert "core: relay key and member id as immutable relay link data ( #6711 )"
...
This reverts commit d665b1f5d8 .
2026-03-28 14:03:09 +04:00
spaced4ndy
d665b1f5d8
core: relay key and member id as immutable relay link data ( #6711 )
2026-03-28 09:51:50 +00:00
Evgeny
674a545a33
core: signed messages status ( #6699 )
...
* XOcore: signed messages status
* remove empty lines
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* EOL
* only mark verified as verified
* update API types
* todos
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-03-24 20:05:09 +00:00
spaced4ndy
58f47cbadf
core, ui: channel subscriber count ( #6696 )
2026-03-24 10:54:32 +00:00
Evgeny Poberezkin
5fc7560df9
Merge branch 'master' into chat-relays
2026-03-21 18:07:26 +00:00
spaced4ndy
b38fc62281
core: chat relays announce new members to owners (with keys); forward x.grp.mem.restrict; sign and verify x.grp.leave and x.info (member profile update) ( #6690 )
2026-03-19 19:47:02 +00:00
sh
2df13dad36
core: add custom data commands, fix groups parser ( #6691 )
...
* core: add custom data commands, fix groups parser
- Add APISetGroupCustomData and APISetContactCustomData to ChatCommand,
with parsers (/_set custom #, /_set custom @) and processors
following the APISetChatUIThemes pattern
- Fix APIListGroups parser missing space ("/_groups" -> "/_groups ")
to align with auto-generated cmdString
- Add chatCommandsDocsData entries for APISetGroupCustomData,
APISetContactCustomData, and APISetUserAutoAcceptMemberContacts
* core: named fields for codegen, run codegen
- Use named record fields for APISetGroupCustomData,
APISetContactCustomData, APISetUserAutoAcceptMemberContacts
(required for chatCommandsDocsData field resolution)
- Fix OnOff field name to "onOff" (avoids clash with User field)
- Remove APISetUserAutoAcceptMemberContacts from undocumentedCommands
- Regenerate COMMANDS.md and commands.ts
* nodejs: add ChatApi wrappers for custom data and apiGetChat
- apiSetGroupCustomData, apiSetContactCustomData
- apiSetAutoAcceptMemberContacts
- apiGetChat (manual wrapper, APIGetChat undocumented)
2026-03-19 09:10:19 +00:00
Ed Asriyan
b8178d01a8
core: fix /_groups command ( #6660 )
...
* core: fix `/_groups` command
add missing space after `/_groups`. fixes #5195
* remove space in CLI commands (they would break parser)
---------
Co-authored-by: Evgeny <evgeny@poberezkin.com >
2026-03-19 09:08:14 +00:00
spaced4ndy
74fe5340f7
core: verify signed messages in channels (fix member keys not saved); sign deletion message for deleted member; relay member key ( #6683 )
2026-03-18 13:34:14 +04:00
spaced4ndy
6daee3a5da
core: fix channel deletion for relay client ( #6676 )
2026-03-16 11:31:08 +00:00
Evgeny
2db92ff6ed
core: group member/owner keys for signing important messages ( #6597 )
...
* rfc: member keys
* update plan
* new encoding for message batches
* send new batch encoding in relay-based groups
* mvp launch plan
* update plan
* core: verify group member keys (#6669 )
* core: verify group member keys
* refactor, process forwards
* refactor parsing
* refactor parsing 2
* refactor parser 3
* update rfc
* simplify
* simplify
* log tag
* refactor tag logging
* refactor withVerifiedSig
* simplify
* refactor more
* comment
* fix encoding
* fix sending as group for the new binary batch encoding
* unify types
* update api docs
* clean up
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* core: signing messages with member keys (#6675 )
* core: signing messages with member keys (types)
* sign messages
* refactor batching
* better
* refactor
* remove unused Eq
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
* core: forward signed messages as unchanged binary strings (#6678 )
* core: forward signed messages as unchanged binary strings
* refactor
* consolidate types
* refactor VerifiedMsg
* refactor more
* undo rename
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* update schema and plans
* add signed status to chat items and events
* test signed chat items
* unify parser
* PostgreSQL fix, remove unused fields, option to send inline files in the tests
* change inline files config
* revert inline config change
* use different characters in batch encoding, to avoid conflict with inline files
* fix test, api docs, query plans
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
2026-03-16 10:46:35 +00:00
spaced4ndy
7ac901587a
Merge branch 'master' into chat-relays
2026-03-06 19:27:07 +04:00
spaced4ndy
3f4e7f379d
core, ui: group members permanent connection errors ( #6662 )
2026-03-06 15:24:55 +00:00
spaced4ndy
b97868d79f
ios: channels and chat relays ui ( #6634 )
2026-03-05 09:13:24 +00:00
spaced4ndy
dedc57d328
Merge branch 'master' into chat-relays
2026-02-19 15:29:18 +04:00
sh
26e15221f6
directory-service: fix slow postgresql queries ( #6639 )
...
* add analysis
* implement p1.1 and p1.2
* Update apps/simplex-directory-service/src/Directory/Service.hs
Co-authored-by: Evgeny <evgeny@poberezkin.com >
* update plans
* remove plans
---------
Co-authored-by: Evgeny <evgeny@poberezkin.com >
2026-02-18 09:28:39 +00:00
sh
764fb27f1c
core, directory: allow voice messages during member approval phase to allow audio captchas in groups that prohibit voice messages ( #6624 )
...
* rfcs: add member-support-voice rfc
* update based on the feedback
* implement RFC
* add new tests
* fix protocol tests and update plans
* restrict voice captcha exemption to host approval phase
* update agent_query_plans.txt
2026-02-14 09:26:18 +00:00
Evgeny
628b00eb08
core: channel messages ( #6604 )
...
* core: channel messages (WIP)
* do not include member ID when quoting channel messages
* query plans
* reduce duplication
* refactor
* refactor plan
* refactor 2
* all tests
* remove plan
* refactor 3
* refactor 4
* refactor 5
* refactor 6
* plans
* plans to imrove test coverage and fix bugs
* update plan
* update plan
* bug fixes (wip)
* new plan
* fixes wip
* more tests
* comment, fix lint
* restore comment
* restore comments
* rename param
* move type
* simplify
* comment
* fix stale state
* refactor
* less diff
* simplify
* less diff
* refactor
---------
Co-authored-by: Evgeny @ SimpleX Chat <259188159+evgeny-simplex@users.noreply.github.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-02-12 07:11:59 +00:00
Evgeny Poberezkin
e29712c2e8
Merge branch 'master' into chat-relays
2026-01-29 19:51:22 +00:00
Evgeny Poberezkin
14d5819ade
Merge branch 'stable'
2026-01-28 23:38:54 +00:00
Evgeny
a786693c1a
core: improve error handling ( #6602 )
...
* core: improve error handling
* simplexmq
2026-01-28 21:57:39 +00:00
Evgeny
7d5768cf3a
core: prepare group link before creating the group ( #6600 )
...
* core: prepare group link before creating the group
* update group creation flow
* refactor
* comments
* update plan, schema, api docs/types
* store shared group ID and keys when joining relay groups
* query plans, api docs
2026-01-27 17:56:31 +00:00
Evgeny Poberezkin
93c45879c9
Merge branch 'master' into chat-relays
2026-01-23 21:51:49 +00:00
Evgeny
5453d8875c
core: filter all messages with links in text when link content filter is used ( #6591 )
...
* core: change msg_content_tag stored as blob to text
* track if items have links and use has_link when searching for links (MCLink_ MsgContentTag is passed)
* fix test (broken in master)
* merge migrations, update api and schema
* minor fixes
* tests
* update plans
* update migrations
2026-01-23 12:31:42 +00:00
spaced4ndy
bd8ba4d5c6
core: chat relays protocol ( #6383 )
...
* core: chat relays protocol wip
* types, notes
* remove file
* removal protocol
* schema
* status
* update
* recovery
* update
* formatting
* rename
* more types
* comment
* more docs
* decrease number of steps
* format
* correct
* update
* update protocol
* update
* typo
* todo
* update doc
* update
* update
* remove added
* update
* update
* XGrpRelayReady
* link to chat relays
* update
* remove from protocol
* update
* json
* wip
* remove comment
* wip
* update
* wip
* wip
* update
* wip
* wip
* plans
* better view
* fix
* fix
* relay acceptance
* rework api
* add relays to link
* comment
* active on con, fix send
* comments
* direct in group plan
* prepare
* member connection wip
* comments
* member connection wip
* fix forwarding
* introduce moderators to new member
* enable relay tests
* plans
* security objectives
* refactor
* add to threat model
* stress test wip
* stress test wip
* Revert "stress test wip"
This reverts commit acde8a1fb3 .
* Revert "stress test wip"
This reverts commit 6435808438 .
* remove stress test
* improve output
* invert relay fkey
* postgres schema
* comments
* group in progress, remove auto-select relays commented code
* comments
* corrections
* comment
* lint
* redundant import
* core: chat relay request worker (#6509 )
* update plans
* strict tables
* core: update group link asynchronously with relay link (#6548 )
* update simplexmq
* docs: connection to chat relays rfc (#6554 )
* add test for 2 relays (doesn't pass)
* create unknown member in same transaction as checking
* fix relays choosing different memberId (XContactRelay)
* plans, api
* use same incognito profile for relays, connect concurrently, save correct link for plan
* test
* don't duplicate items on group connection
* check relay record exists when joining
* use mapConcurrently when adding relays, update schemas
* fix multi-relay join for postgres (savepoint)
* core: async retry connection to chat relays (#6584 )
* update simplexmq
* fix api tests
* prefer throwing temp error on connection
* check group relays when deleting from configuration
* relay_request_err_reason
* relay role
* rename, fix syntax
* plans
* rename, style
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2026-01-21 13:19:06 +00:00
spaced4ndy
46629a1c03
Merge branch 'master' into chat-relays
2026-01-09 15:04:53 +04:00
Evgeny
405ce9615e
core: support content filter for contacts and notes to allow media galleries ( #6552 )
...
* core: support content filter for contacts and notes to allow media galleries
* add api to list chat content types, tests
* query plans, api docs
* add indices
2026-01-09 08:24:26 +00:00
Evgeny
3596c37275
core: improve database concurrency ( #6541 )
...
* core: improve database concurrency
* tests: prints on timeouts (#6546 )
* update simplexmq
* fix test
* update simplexmq
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2026-01-08 13:43:37 +00:00
spaced4ndy
d29fd2dfa6
Merge branch 'master' into chat-relays
2026-01-05 11:31:15 +04:00
Evgeny
f0467aee00
directory service: fix queries ( #6539 )
...
* fix directory service queries
* fix
* reduce postgres pool size to 1
* stabilize postgres client tests, remove slow handshake tests
* update simplexmq
* fix test
* test delay
2026-01-04 19:04:32 +00:00
Evgeny
59b31e2631
core: compress commands in remote connection ( #5776 )
...
* core: compress commands in remote connection
* backwards compatible compression
* show in CLI if compression is enabled
* use aroundWith for ghc 8.10.7 compatibility
* skip bot API tests in GHC 8.10.7
2025-12-30 07:49:17 +00:00
spaced4ndy
fe4ff8993d
core: finalize introductions -> member relations vector stage 2 migration (drop introductions) ( #6490 )
...
* core: finalize introductions -> member relations vector stage 2 migration (drop introductions)
* remove comment
* skip down migration check
* fix
* plans
* postgres schema
* skip down migration comparison
* do not drop group_member_intros table, rename migrations
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-12-26 13:29:48 +00:00
spaced4ndy
ae0dec480d
Merge branch 'master' into chat-relays
2025-12-12 14:04:31 +04:00
spaced4ndy
caef012003
core: fix support chat deletion ( #6271 )
2025-12-11 17:29:31 +00:00
spaced4ndy
f76e994034
core: forward based on relations vector ( #6464 )
...
* core: forward based on relations vector wip
* fix introductions
* fix forwarding tests
* fix forwarding inside support scope
* fix deduplication test
* fix more tests
* plans, api
* live migration wip
* enable tests
* member locks
* api
* plans
* fix for postgres
* fix for postgres
* rename predicate
* rename predicate
* optimize
* refactor
* fix
* check
* move part of migration to sql
* plans
* core: preserve detailed information in relation vectors (#6484 )
* core: relations vector live migrations; stage 2 migration sql (#6472 )
* rework forwarding in support scope
* move operations inside transactions
* set_member_vector_new_relation function
* read vector ad-hoc
* partition in transaction
* fix postgres
* postgres schema
* api
* plans
* remove comment
* lock before migration computation
* refactor
* simplify set relations
* retreive only support scope members
* fix
* refactor
* fix comment
* enable tests
* 1 second
* for update
* locks
* fix mask
* plans
* fix
* postgres
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2025-12-09 14:48:32 +00:00