Summary

Description

Website & Android app

Mentions & message entry

  • Pasting the text of a rendered message containing mentions no longer degrades them into literal markdown markup (<u>[@everyone](...)</u>); mentions survive the clipboard round-trip intact.
  • Editing a message (or restoring a draft) containing user mentions no longer shows literal @UserId(...) text in the editor — mention ids are IC principals and the parser now recognises them.
  • Mentioned users are populated again when sending a message, fixing a regression where mentions were not being recorded on send.

Message list & scroll-back

  • Fixed scroll-back hitting a permanent 'wall' mid-history: holes in the server's event log made the loaded ranges disjoint and the visible timeline could then never grow. Holes are now recorded as covered, and scroll-back recovers all the way to the start of a chat.
  • Fixed an uncaught-error storm from the virtualised message list during fast scrolling (intersection observers firing after their row had been recycled).

Message appearance

  • Media message bubbles hug the image width again — captions and reply quotes no longer widen the bubble past the image.
  • Link previews with square or portrait images now use a side-by-side layout so the image is never cropped; the full-width banner is reserved for landscape images.
  • Landscape link-preview banners no longer get cropped on very wide screens — the preview now caps its own width (Discord-style embed) instead of clipping the image.

iOS PWA

  • Fixed the white screen on every relaunch of the installed PWA (a service-worker document-validation bug that stalled the navigation response on cold start).
  • Tapping an external link no longer leaves a blank in-app browser sheet behind when the link opens another app.

Android app

Performance

  • Opening 'New chat' no longer blocks for ~2 seconds before rendering: every UI container was paying for two ResizeObserver registrations it didn't need, multiplied across ~300 contact rows.

Bug fixes

  • Third-party links now open in their verified app where one is installed (e.g. a GitHub link opens the GitHub app) instead of always launching a browser tab; oc.app links still deep-link within OpenChat.

Internal

  • Fixed the Android plugin build failing with Redeclaration errors once both debug and release codegen output existed.
Payload

Proposal to execute nervous system function:

Nervous system function:

NervousSystemFunction { id: 10000, name: "Update OpenChat frontend assets", description: Some( "This will commit a newly prepared batch of assets which have been uploaded to the asset canister by a principal which has been granted the "Prepare" permission.", ), function_type: Some( GenericNervousSystemFunction( GenericNervousSystemFunction { target_canister_id: Some( 6hsbt-vqaaa-aaaaf-aaafq-cai, ), target_method_name: Some( "commit_proposed_batch", ), validator_canister_id: Some( 6hsbt-vqaaa-aaaaf-aaafq-cai, ), validator_method_name: Some( "validate_commit_proposed_batch", ), topic: Some( DappCanisterManagement, ), }, ), ), }

Payload sha256:

741dc48ec634212439e54a0b38fe99bd171bd67fc44015d4ba8e263f5ac4b75b

Payload:

commit proposed batch 247 with evidence e18d9836ce3bf0f2bb8ef208dd543eca7ff574bd66cc9591f7df347b38f2d554

Overview