Skip to content

chore: cherry-pick feat: hoist perps providers for homepage hub tabs UI#30134

Merged
chloeYue merged 2 commits into
release/7.77.0from
cherry-pick-7-77-0-e0a180e
May 13, 2026
Merged

chore: cherry-pick feat: hoist perps providers for homepage hub tabs UI#30134
chloeYue merged 2 commits into
release/7.77.0from
cherry-pick-7-77-0-e0a180e

Conversation

@vinnyhoward

@vinnyhoward vinnyhoward commented May 13, 2026

Copy link
Copy Markdown
Contributor

Description

Changelog

CHANGELOG entry:null

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/TMCU-737

Manual testing steps

Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]

Screenshots/Recordings

Before

After

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Medium Risk
Changes Perps stream emission control (pause is now reference-counted) and alters provider wiring across Homepage/DiscoveryTabs, which could impact live Perps data updates and tab navigation behavior if mismanaged.

Overview
Hoists PerpsConnectionProvider/PerpsStreamProvider to wrap HomepageDiscoveryTabs, and adds a perpsProvidersHoisted option to Homepage so it can skip re-wrapping Perps sections when a parent already provides the context.

Introduces reference-counted pausing in StreamChannel (replacing a boolean) so multiple callers can pause/resume without clobbering each other, and adds PerpsStreamManager.pauseAllChannels()/resumeAllChannels() to pause/resume all WS-backed channels.

Updates Discovery Tabs to pause Perps WS channels when switching to non-Perps tabs (e.g. Predictions), resume when returning, and ensure unmount cleanup only resumes if the tab layer actually holds a pause; adds/adjusts unit tests covering these cases and Perps section rendering under the Perps feature flag.

Reviewed by Cursor Bugbot for commit 5ac8c51. Bugbot is set up for automated code reviews on this repo. Configure here.

@vinnyhoward vinnyhoward requested review from a team as code owners May 13, 2026 17:14
@github-actions

Copy link
Copy Markdown
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

⏭️ Smart E2E selection skipped - PR targets a release branch (release/*)

All E2E tests pre-selected.

View GitHub Actions results

@sonarqubecloud

Copy link
Copy Markdown

@chloeYue chloeYue left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@chloeYue chloeYue merged commit ef7911f into release/7.77.0 May 13, 2026
109 of 111 checks passed
@chloeYue chloeYue deleted the cherry-pick-7-77-0-e0a180e branch May 13, 2026 18:21
@github-actions github-actions Bot locked and limited conversation to collaborators May 13, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants