element-hq / element-hq/element-x-android

Notifications not working: "Unable to get a notification data / Unable to resolve event $eventid"

Open
#4,826 9 comments 2 reactions 0 assignees View on GitHub
A-Notifications O-Occasional S-Major T-Defect
Dominant language
Kotlin
Stars
2.4k
Forks
624
Avg merge
1d 14h
Merged PRs (30d)
149

Description

### Steps to reproduce

Uncertain

### Outcome

#### What did you expect?
Notifications.
They've been working fine for months but suddenly stopped the other day.

#### What happened instead?
```
2025-06-05T08:25:27.259829Z WARN elementx: [Push/VectorFirebaseMessagingService] New Firebase message. Priority: 1/1 |
2025-06-05T08:25:27.294408Z DEBUG matrix_sdk::http_client::native: Sending request num_attempt=1 | crates/matrix-sdk/src/http_client/native.rs:78 | spans: get_notification{room_id="!piRDLorRSaVBdlbefn:nerdhouse.io" event_id="$H8IdXKef8sY5-Zih5CIhtU_CanF_ZlXeUTBnoAU7ql0"} > try_sliding_sync > sync_once{conn_id="notifications" } > send{request_id="REQ-168" method=POST uri="https://matrix.ecmp.network/_matrix/client/unstable/org.matrix.simplified_msc3575/sync" request_size="733B"}
2025-06-05T08:25:27.369928Z DEBUG matrix_sdk::http_client: Got response | crates/matrix-sdk/src/http_client/mod.rs:214 | spans: get_notification{room_id="!piRDLorRSaVBdlbefn:nerdhouse.io" event_id="$H8IdXKef8sY5-Zih5CIhtU_CanF_ZlXeUTBnoAU7ql0"} > try_sliding_sync > sync_once{conn_id="notifications" } > send{request_id="REQ-168" method=POST uri="https://matrix.ecmp.network/_matrix/client/unstable/org.matrix.simplified_msc3575/sync" request_size="733B" status=200 response_size="28.9k"}
2025-06-05T08:25:27.445722Z WARN elementx: [Push/PushHandler] Unable to get a notification data
uniffi.matrix_sdk.InternalException: Unable to resolve event $H8IdXKef8sY5-Zih5CIhtU_CanF_ZlXeUTBnoAU7ql0
at io.element.android.libraries.push.impl.notifications.DefaultNotifiableEventResolver.resolveEvent-1_PhezE(SourceFile:249)
at io.element.android.libraries.push.impl.notifications.DefaultNotifiableEventResolver$resolveEvent$1.invokeSuspend(SourceFile:13)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(SourceFile:9)
at kotlinx.coroutines.DispatchedTask.run(SourceFile:115)
at android.os.Handler.handleCallback(Handler.java:991)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8934)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
|
```

### Your phone model

Pixel 8 Pro

### Operating system version

Android 15

### Application version and app store

25.05.4 from the play store

### Homeserver

ecmp.network; conduwuit (whatever the last/latest build is/was)

### Will you send logs?

Yes

### Are you willing to provide a PR?

No

Contributor guide

Open the contributing guide

Research direction

Start at DefaultNotifiableEventResolver.resolveEvent and the PushHandler path shown in the logs, then trace the notification request through the Matrix Rust SDK sync call in crates/matrix-sdk/src/http_client/native.rs. Use the supplied Pixel 8 Pro, Android 15, Element X 25.05.4, and conduwuit details to investigate. Done means the reported notification resolves without the “Unable to resolve event” error.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin, rust
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.