Skip to content

Fix: Blockchain Transaction Status Race Condition #164

Description

@johdanike

Description
johdanike opened on Jun 25
Member
📁 Implementation Directory
components/wallet/TransactionTracker.tsx

🎯 Goal
Fix a race condition where the UI shows 'Pending' momentarily even after the backend/Soroban RPC already confirmed success.

📋 Requirements

  • Refactor the status polling logic to sync properly with the Web3 provider's receipt confirmation.
  • Clear the polling interval strictly immediately upon receiving a terminal state (Success or Fail).
  • Add a minor debounce to the 'Pending' UI state to prevent micro-flickers on fast network responses.

🔧 Technical Scope
React Hooks, Async JS, Soroban RPC

🌿 Branch
git checkout -b fix/transaction-status-race

✅ Acceptance Criteria

  • Transaction status must transition smoothly from Pending -> Success without flickering backward.
  • Strict Layered Architecture: Implement using the Component -> Hook -> Service pattern
  • Data Source: Response data must be retrieved from the backend API. No Inline Mock Objects
  • Screenshot of all implementations must be included in PR
  • AI-generated PR submissions are strictly disallowed
  • Closes #[issue_id] with a work summary included in the PR body
  • Note a default in any of this will result to issue not being closed nor merged

📌 PR Requirements

  • ⚠️ Assignment is required before starting — comment to request assignment
  • PR must comply fully with CONTRIBUTING.md
  • AI Agent submissions are DISALLOWED and will be closed without review
  • Upload a screenshot showing all unit tests passing or API response
  • PR description must include: Closes #[issue_id] and a brief summary of work done

💬 Example Commit
fix(wallet): resolve polling race condition in blockchain transaction tracker

Metadata

Metadata

Assignees

Labels

Stellar WaveTasks related to the Stellar Wave development phase

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions