Skip to content

various fixes for chat modernization project viewer - #6208

Open
rohvani wants to merge 4 commits into
project/chat-modernizationfrom
pepper/chat-fixes
Open

various fixes for chat modernization project viewer#6208
rohvani wants to merge 4 commits into
project/chat-modernizationfrom
pepper/chat-fixes

Conversation

@rohvani

@rohvani rohvani commented Aug 27, 2026

Copy link
Copy Markdown
Member

Description

Use this project board to find the referenced issues: https://github.com/orgs/secondlife/projects/90/views/1

Issues Covered:

  • issue 119 - Bug - Missing offline friend requests in desktop chat history
  • issue 118 - Bug - Missing Android conversations in logs on desktop
  • Bug - Initial live IMs in a conversation can appear to be duplicated

Checklist

Please ensure the following before requesting review:

  • I have provided a clear title and detailed description for this pull request.
  • If useful, I have included media such as screenshots and video to show off my changes.
  • The PR is linked to a relevant issue with sufficient context.
  • I have tested the changes locally and verified they work as intended.
  • All new and existing tests pass.
  • Code follows the project's style guidelines.
  • Documentation has been updated if needed.
  • Any dependent changes have been merged and published in downstream modules
  • I have reviewed the contributing guidelines.

Additional Notes

Keep authoritative mute-list source classification in one testable predicate so full, empty, and server-validated cache responses remain eligible while fallback cache stays gated.

Log compact gate, list, history, and archive publication outcomes so device-specific synchronization failures can be diagnosed without recording message content.
Compare fallback sender identities as canonical resident usernames when either stitched source lacks a UUID. This lets legacy First Last ChatService names match viewer first.last names, preventing the first outbound live IM from retaining a duplicate history row.

Cover legacy-to-resident matching and distinct-resident rejection in the LLChatServiceHistoryCore tests.

Validated with the Release secondlife-bin build and the LLChatServiceHistoryCore test suite (13 tests).
Create P2P conversation metadata when the first durable service archive is published, so history downloaded on a new device is discoverable without a live IM session. Preserve Conversation Log consent, deduplicate existing rows, and persist through the existing observer contract.

Add focused coverage for cross-device discovery, duplicate publication, retained metadata, and disabled logging.

Validated with the Release secondlife-bin build, the LLConversationLog test suite (2 tests), and the LLChatServiceHistoryCore test suite (13 tests).
Defer IM transcript replay until the frame after clearing chat history, allowing deferred inline notification panels to finish destruction before replacements are embedded.

Keep message updates paused during that interval so existing live rows and all notification-backed offers are rebuilt through the normal generic path.

Validated with the Release secondlife-bin build.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants