chore: bump status-go — defer mailserver history sync in background#21111
chore: bump status-go — defer mailserver history sync in background#21111xAlisher wants to merge 8 commits into
Conversation
Updates vendor/status-go to status-im/status-go#7508. Companion PR for the background battery drain fix: - Adds backgroundMode flag to Messenger - Gates asyncRequestAllHistoricMessages() in handleConnectionChange and checkForStorenodeCycleSignals when app is backgrounded - Exposes SetAppBackground RPC (wired in StatusGoService.java in this PR) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Wires the new SetAppBackground RPC (status-im/status-go#7508) into scheduleBackendLifecycleUpdate so the messenger layer knows when the app is backgrounded and can defer mailserver history syncs accordingly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Jenkins BuildsClick to see older builds (22)
|
Includes fix(filter): suppress Waku filter-subscription renewal in background (R1 of #21045 battery-drain fix, logos-messaging/logos-delivery-go#1304) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The `allowSyncingOnMobileNetwork` list item in Profile > Messaging was hidden with `visible: false` pending validation. The backend toggle (getSyncingOnMobileNetwork) is fully implemented and working. Removing the visibility guard exposes the setting so users can opt into Wi-Fi-only syncing and avoid LTE radio drain from Waku keepalives. Closes #21045 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
| // Notify the messenger layer of background/foreground state so it can | ||
| // defer mailserver history syncs that would otherwise run while the | ||
| // screen is locked and drain the LTE radio (status-im/status-go#7508). | ||
| nativeCall("SetAppBackground", "[" + !visible + "]"); |
There was a problem hiding this comment.
@xAlisher we don't need a new explicit call here, when we can use ResumeServices/PauseServices for that on the statusgo side, which is already implemented.
Now that Messenger is registered as a Pausable service in status-go (PausableMessenger), the existing PauseServices/ResumeServices call already gates filter health-check pings and mailserver history syncs when the app is backgrounded. The explicit SetAppBackground call is no longer needed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Good point @saledjenic. Updated in bcce26d: On the status-go side (status-im/status-go#7508 @ 5ab25f5): added On the status-app side: removed the explicit |
Updates the submodule to include the refactored lifecycle hooks: - Messenger registered in ServiceRegistry as PausableMessenger - SetAppBackground removed; background mode flows through ToBackground/ToForeground - Folded backgroundMode + SetFilterBackgroundMode into existing lifecycle hooks Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Closing in favour of #21125 by @jrainville, which is the companion status-app PR for status-go#7516 (the clean version of this work without the go-waku fork dependency). |
Summary
Companion PR for status-im/status-go#7508.
vendor/status-gotod793ad5d99a115967edf55af5e4a590047983e36SetAppBackgroundRPC intoStatusGoService.javaWhat this fixes
When the app is backgrounded and LTE connectivity resumes (airplane mode off, dead zone recovery), status-go was unconditionally requesting all historic messages — generating 321 MB of background network traffic and keeping the LTE radio at 99% duty cycle (~425 mAh/hr). Measured in #21045 (T5 soak).
The status-go PR adds a
backgroundModeflag that gatesasyncRequestAllHistoricMessages(). This PR wires the Android lifecycle signal so the flag is set correctly.Changes
vendor/status-go— bumped to status-im/status-go#7508StatusGoService.java— inscheduleBackendLifecycleUpdate():Called after
PauseServices/ResumeServices, on the samelifecycleExecutorthread with coalescing already in place.Test plan
adb shell dumpsys netstats— Status RX bytes should be minimal)Closes #21045 (R2 of proposed fixes)