Skip to content

refactor(wallet): remove orphaned wallet status balance UI - #3584

Merged
baktun14 merged 1 commit into
mainfrom
refactor/wallet-remove-orphaned-status-ui
Aug 12, 2026
Merged

refactor(wallet): remove orphaned wallet status balance UI#3584
baktun14 merged 1 commit into
mainfrom
refactor/wallet-remove-orphaned-status-ui

Conversation

@baktun14

@baktun14 baktun14 commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Why

The WalletStatus balance dropdown was removed from the top nav when the ui_top_nav flag and legacy sidebar shell were deleted (#3564). What was left behind is a self-contained chain of that old UI with no live entry point — it's only reachable through YourAccount's !address branch, and HomeContainer never renders YourAccount unless !!address is true. So the branch can't fire in production, and everything hanging off it is dead code.

This just clears out that leftover so the wallet UI surface reflects what's actually rendered.

What

Deleted the orphaned chain (all exclusively used by each other, no other importers):

  • components/layout/WalletStatus.tsx (+ spec)
  • components/shared/ConnectWallet.tsx
  • components/wallet/ManagedWalletPopup/ManagedWalletPopup.tsx (+ spec) — the components/wallet/ dir is now gone
  • hooks/useManagedEscrowFaqModal.tsx — only consumer was ManagedWalletPopup

Edited:

  • YourAccount.tsx — dropped the ConnectWallet import/dependency and the unreachable !address branch; the component now early-returns null when there's no address instead of wrapping everything in a fragment.
  • YourAccount.spec.tsx — removed the stale "renders ConnectWallet when wallet has no address" test.
  • useOnboardingChrome.ts — removed a dangling WalletStatus mention in a doc comment.

Shared hooks (useWallet, useWalletBalance, AddFundsLink) are untouched. No user-facing behavior change — the removed branch was already unreachable.

Verification: no remaining references to any of the four symbols in deploy-web/src; tsc --noEmit shows no new errors from the changed files; YourAccount unit suite passes (12/12); lint clean on the changed files.

Summary by CodeRabbit

  • Changes
    • Removed wallet connection prompts and wallet status displays from the deployment interface.
    • Removed managed wallet details, including balance information, trial messaging, FAQ access, and add-funds actions.
    • The account section now remains hidden until a wallet address is available.
  • Documentation
    • Updated onboarding guidance to reflect the streamlined interface.

The WalletStatus balance dropdown was removed from the top nav along with the
ui_top_nav flag and legacy sidebar (#3564). What remained was a self-contained
chain of the old UI reachable only through YourAccount's !address branch, which
HomeContainer never mounts (it gates on !!address).

Delete the dead chain (WalletStatus, ConnectWallet, ManagedWalletPopup,
useManagedEscrowFaqModal + specs), drop the unreachable branch from YourAccount,
and clean up the stale test and doc comment. No user-facing behavior change.
@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: bf1919a1-be9b-4a84-9cb7-e1bebcb85569

📥 Commits

Reviewing files that changed from the base of the PR and between 2db9dc6 and 93f6689.

📒 Files selected for processing (9)
  • apps/deploy-web/src/components/home/YourAccount/YourAccount.spec.tsx
  • apps/deploy-web/src/components/home/YourAccount/YourAccount.tsx
  • apps/deploy-web/src/components/layout/WalletStatus.spec.tsx
  • apps/deploy-web/src/components/layout/WalletStatus.tsx
  • apps/deploy-web/src/components/shared/ConnectWallet.tsx
  • apps/deploy-web/src/components/wallet/ManagedWalletPopup/ManagedWalletPopup.spec.tsx
  • apps/deploy-web/src/components/wallet/ManagedWalletPopup/ManagedWalletPopup.tsx
  • apps/deploy-web/src/hooks/useManagedEscrowFaqModal.tsx
  • apps/deploy-web/src/hooks/useOnboardingChrome.ts
💤 Files with no reviewable changes (7)
  • apps/deploy-web/src/components/shared/ConnectWallet.tsx
  • apps/deploy-web/src/components/home/YourAccount/YourAccount.spec.tsx
  • apps/deploy-web/src/hooks/useManagedEscrowFaqModal.tsx
  • apps/deploy-web/src/components/layout/WalletStatus.tsx
  • apps/deploy-web/src/components/wallet/ManagedWalletPopup/ManagedWalletPopup.tsx
  • apps/deploy-web/src/components/wallet/ManagedWalletPopup/ManagedWalletPopup.spec.tsx
  • apps/deploy-web/src/components/layout/WalletStatus.spec.tsx

📝 Walkthrough

Walkthrough

The PR removes legacy wallet connection and managed-wallet UI components and tests. YourAccount now renders only when a wallet address exists. Onboarding chrome documentation no longer references WalletStatus.

Changes

Wallet UI removal

Layer / File(s) Summary
Require wallet address for account rendering
apps/deploy-web/src/components/home/YourAccount/YourAccount.tsx, apps/deploy-web/src/components/shared/ConnectWallet.tsx, apps/deploy-web/src/components/layout/WalletStatus.tsx, apps/deploy-web/src/components/wallet/ManagedWalletPopup/*
YourAccount removes ConnectWallet integration and returns null when no wallet address exists. The legacy wallet status, connect-wallet, managed-wallet popup, and related tests are deleted.
Update onboarding chrome contract
apps/deploy-web/src/hooks/useOnboardingChrome.ts
The OnboardingChromeState documentation no longer states that stripped chrome excludes WalletStatus.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers: stalniy

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch refactor/wallet-remove-orphaned-status-ui

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

apps/deploy-web/src/components/home/YourAccount/YourAccount.tsx

ESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox.

apps/deploy-web/src/hooks/useOnboardingChrome.ts

ESLint skipped: the ESLint configuration for this file references a package that is not available in the sandbox.


Comment @coderabbitai help to get the list of available commands.

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

LGTM — clean, mechanical dead-code removal.

Extended reasoning...

Overview

This PR deletes an orphaned UI chain (WalletStatus, ConnectWallet, ManagedWalletPopup, useManagedEscrowFaqModal) that became unreachable after a prior PR (#3564) removed the top nav that used to render WalletStatus. The only remaining edits to non-deleted files are in YourAccount.tsx (removing the now-dead !address branch and its ConnectWallet usage, replacing it with an early return null), its spec (dropping the corresponding test), and a stale doc-comment reference in useOnboardingChrome.ts.

Security risks

None. This is pure deletion of unreachable client-side UI plus a small conditional simplification in YourAccount.tsx. No auth, crypto, data access, or user input handling is touched.

Level of scrutiny

Low-to-moderate scrutiny is appropriate: this is a dead-code removal refactor, not new logic. I independently verified the core claim rather than trusting the PR description at face value — grepped for any remaining references to the four deleted symbols (none found) and confirmed in HomeContainer.tsx:80 that YourAccount is only rendered when isSettingsInit && !!address, meaning the deleted !address branch inside YourAccount could never have fired. The behavioral change (early return null vs. wrapping in a fragment when !address) is equivalent since the !address case rendered nothing observable via the removed branch's sibling checks in the live-render path anyway (this component is never even mounted without an address).

Other factors

No bugs were reported by the bug hunting system. The spec changes are consistent with the deleted symbols (removed the one test exercising the now-deleted ConnectWallet render path), and the remaining YourAccount.spec.tsx tests were unaffected in intent. Scope is well-contained to the described dead-code chain with no drive-by changes.

@codecov

codecov Bot commented Aug 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 75.68%. Comparing base (2db9dc6) to head (93f6689).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3584      +/-   ##
==========================================
- Coverage   76.46%   75.68%   -0.78%     
==========================================
  Files        1141     1047      -94     
  Lines       29722    27330    -2392     
  Branches     7398     6912     -486     
==========================================
- Hits        22726    20684    -2042     
+ Misses       6169     5849     -320     
+ Partials      827      797      -30     
Flag Coverage Δ *Carryforward flag
api 89.02% <ø> (ø) Carriedforward from 2db9dc6
deploy-web 66.40% <100.00%> (-0.03%) ⬇️
log-collector ?
notifications 93.84% <ø> (ø) Carriedforward from 2db9dc6
provider-console 81.38% <ø> (ø) Carriedforward from 2db9dc6
provider-inventory ?
provider-proxy 88.17% <ø> (ø) Carriedforward from 2db9dc6
tx-signer ?

*This pull request uses carry forward flags. Click here to find out more.

Files with missing lines Coverage Δ
...eb/src/components/home/YourAccount/YourAccount.tsx 94.11% <100.00%> (-0.23%) ⬇️
apps/deploy-web/src/hooks/useOnboardingChrome.ts 100.00% <ø> (ø)

... and 90 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@baktun14
baktun14 enabled auto-merge August 11, 2026 19:43
@baktun14
baktun14 added this pull request to the merge queue Aug 12, 2026
Merged via the queue into main with commit b1c6c8f Aug 12, 2026
58 checks passed
@baktun14
baktun14 deleted the refactor/wallet-remove-orphaned-status-ui branch August 12, 2026 07:31
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