mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-09-28 04:48:58 +00:00
updateGroupFromLinkData reported profileChanged via a full structural (/=) that includes publicGroupId - an immutable identity field updateGroupProfile never re-syncs. A directory whose stored public_group_id drifts from the link's therefore re-approved the channel on every link check (~30 min). Fix: normalize publicGroupId out of the comparison (mirrors sameGroupProfileInfo), so only fields updateGroupProfile actually manages drive the change signal. The (pg :: PublicGroupProfile) annotation is required (DuplicateRecordFields). Adds a directory regression test: register+approve a channel, corrupt the stored public_group_id via /x /sql, run a link check, assert the channel stays listed (no re-approval). Builds verified: simplex-directory-service and simplex-chat-test both compile.