messaging: fix timestamps, UX, DM names, perf #56
No reviewers
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_archipelagos!56
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "development_fix_messaging_bugs"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Fourteen bug + perf fixes in the messaging archipelago, each tracked by its own issue.
lhumina_code/hero_os#53
Bugs
mark_as_readis never called)own_user_keymakes every message render as "Me""DM with <public_key>"instead of the contact's nameformat_time/format_relative_timeshow misleading output fortimestamp=0Performance
fetch_chatsis sequential → parallelized withjoin_allfetch_messagesfetched every message in the DB → switched to the newconversationservice.list_messagesRPCKey changes
resolve_chat_display_name(raw_name, is_group, participant_keys, own_user_key, contacts) -> String— slices only, keeps the crate library-clean.ChatPreviewDatagainsparticipant_keys: Vec<String>(carries through fromConversationso DM names can be resolved downstream).Route::NewChat).awaitin the chat-load spawn re-checksroute.peek()before writing to active state.mark_as_read/send.Test plan
cargo check -p hero_archipelagos_messagingagainst hero_osisdevelopmentcargo clippy -p hero_archipelagos_messaging— no new warningsrustfmt --edition 2021 --checkon all six modified messaging filesmessaging: fix timestamps, optimistic send, auto-scroll, DM names, and perfto messaging: fix timestamps, UX, DM names, perf