Skip to content

DAO-2252: Align "Claim rBTC" to be present on all 3 places instead of different naming#2120

Merged
Freshenext merged 1 commit intodao-2251from
dao-2252
Apr 16, 2026
Merged

DAO-2252: Align "Claim rBTC" to be present on all 3 places instead of different naming#2120
Freshenext merged 1 commit intodao-2251from
dao-2252

Conversation

@TravellerOnTheRun
Copy link
Copy Markdown
Contributor

@TravellerOnTheRun TravellerOnTheRun commented Apr 15, 2026

Screenshot 2026-04-15 at 13 11 52 Screenshot 2026-04-15 at 13 11 57 Screenshot 2026-04-15 at 13 12 04

Summary

After a withdrawal request has gone through the vault’s batching and settlement flow, the user still has one on-chain step: receive native rBTC by finalizing the redeem (the same path already labeled Claim rBTC in request history and on the transaction detail screen).

On the main BTC Vault dashboard that final step was labeled Redeem Shares, which reads like a different action (redeeming share tokens) even though it is the same user intent and the same finalize flow as elsewhere: claim the rBTC payout for a claimable withdrawal.

Why this change

  • One action, one name: Using Claim rBTC on the dashboard removes ambiguity and matches the language users already see when they open history or the detail page for the same request.
  • Scope is intentionally narrow: This is a call-to-action label on the withdrawal finalize control only. Status copy (for example progress step labels and table status badges) stays as-is so “what state is this request in?” remains separate from “what button do I press to finish?”.

For reviewers

No contract or routing changes—display copy and tests only. If you are new to the vault UI, think of this as renaming the last interactive step of a withdrawal so it matches the rest of the product instead of introducing a second phrase for the same operation.

Matches history and detail CTAs for the same claimRedeemNative flow.
@github-actions
Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Snapshot Warnings

⚠️: No snapshots were found for the head SHA e8ce49c.
Ensure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice.

Scanned Files

None

@TravellerOnTheRun TravellerOnTheRun changed the base branch from main to dao-2251 April 15, 2026 09:16
@TravellerOnTheRun TravellerOnTheRun changed the title DAO-2252: Use Claim rBTC for BTC Vault withdrawal finalize button DAO-2252: Align "Claim rBTC" to be present on all 3 places instead of different naming Apr 15, 2026
@Freshenext Freshenext merged commit af16252 into dao-2251 Apr 16, 2026
6 checks passed
@Freshenext Freshenext deleted the dao-2252 branch April 16, 2026 14:02
Freshenext pushed a commit that referenced this pull request Apr 16, 2026
Matches history and detail CTAs for the same claimRedeemNative flow.
Freshenext pushed a commit that referenced this pull request Apr 16, 2026
…n BTC vault page (#2119)

* fix(btc-vault): align cache invalidation with vault queries

STORY-DAO-2251 Phase 1.

- Add getBtcVaultActionEligibilityContracts for shared multicall descriptors
- useActionEligibility reads contracts via the helper (same on-chain calls)
- Invalidate active-requests-history and wagmi readContracts keys; drop unused action-eligibility key

* fix(btc-vault): refetch eligibility after claim and redeem

STORY-DAO-2251 Phase 1.

- Compose page after-refetch callbacks with useActionEligibility refetch in BtcVaultDashboard
- Extend dashboard tests for refetch ordering and probe callbacks
- Add phase 1 devlog

* fix(btc-vault): refetch active requests in parallel after finalize

Sequential awaits between phase-1 and phase-2 contract reads could run
before React recomputed phase-2 query inputs from fresh phase-1 data,
so redeem visibility and claimable withdrawal could lag or clear
incorrectly. Parallel refetch restores the prior safe ordering while
still returning a Promise for callers that await completion.

* fix(btc-vault): await vault then whitelist in action eligibility refetch

Callers that chain parent refetch then eligibility need a refetch that
fully settles on-chain derived reads before UI re-enables deposit and
withdraw. Sequential vault and whitelist refetch avoids racing the
mapper on partially updated data.

* refactor(btc-vault): extract finalize-shares flow orchestration

Centralizes executeTxFlow wiring, invalidation, post-success refetch,
and busy-state handling (wagmi pending gap and holding busy until
claimable props clear) so claim and redeem CTAs share one behavior.

* refactor(btc-vault): slim claim/redeem buttons with shared busy CTA

Dashboard buttons delegate to the shared finalize hook and a single
busy presentation (primary look without native disabled, tooltip on
wrapper) so in-progress copy and accessibility stay consistent.

* fix(btc-vault): await claim/redeem refetch then action eligibility

After finalize, parent refetch and action eligibility refetch run in
order so deposit and withdraw controls do not stay disabled from stale
eligibility while the vault page catches up.

* fix(btc-vault): align transaction detail claim-in-progress UX

Matches dashboard finalize behavior for claim-in-flight so the detail
view does not treat the control as a fresh clickable claim while the
same safety and messaging expectations apply.

* fix(btc-vault): label withdrawal finalize action as Claim rBTC (#2120)

Matches history and detail CTAs for the same claimRedeemNative flow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants